Book Image

The MySQL Workshop

By : Thomas Pettit, Scott Cosentino
5 (1)
Book Image

The MySQL Workshop

5 (1)
By: Thomas Pettit, Scott Cosentino

Overview of this book

Do you want to learn how to create and maintain databases effectively? Are you looking for simple answers to basic MySQL questions as well as straightforward examples that you can use at work? If so, this workshop is the right choice for you. Designed to build your confidence through hands-on practice, this book uses a simple approach that focuses on the practical, so you can get straight down to business without having to wade through pages and pages of dull, dry theory. As you work through bite-sized exercises and activities, you'll learn how to use different MySQL tools to create a database and manage the data within it. You'll see how to transfer data between a MySQL database and other sources, and use real-world datasets to gain valuable experience of manipulating and gaining insights from data. As you progress, you'll discover how to protect your database by managing user permissions and performing logical backups and restores. If you've already tried to teach yourself SQL, but haven't been able to make the leap from understanding simple queries to working on live projects with a real database management system, The MySQL Workshop will get you on the right track. By the end of this MySQL book, you'll have the knowledge, skills, and confidence to advance your career and tackle your own ambitious projects with MySQL.
Table of Contents (22 chapters)
1
Section 1: Creating Your Database
6
Section 2: Managing Your Database
11
Section 3: Querying Your Database
16
Section 4: Protecting Your Database

Using roles

Besides granting permissions to individual users, in MySQL, it is also possible to create roles and grant permissions to roles and then assign roles to users. This makes handling groups of users with similar permissions much easier.

To create a role for webdeveloper, we can provide the following query:

CREATE ROLE 'webdeveloper';

The next step is to assign some permissions to the role. This is done with GRANT, just like how you did for the user permissions:

GRANT SELECT ON mysql.user TO 'webdeveloper';

To assign a role to a user, we need to use GRANT as follows:

GRANT 'webdeveloper' TO 'johndoe'@'%';

An account can have no roles, a single role, or multiple roles. If a role is granted to your user, then you might need to tell MySQL which roles you want to use with the help of the following query:

SET ROLE 'webdeveloper';

Instead of having to do this every time or having to modify an application...