MySQL sync user management
Users are created to access databases in a MySQL sync cluster.
Users only have access to the cluster itself—there is no access to cluster nodes, as they are managed by Servercore. By default, all users in a cluster have the same permissions.
Access to a single MySQL sync database can be granted to multiple users.
Create a user
- In the Dashboard, on the top menu, click Products and select Managed Databases.
- Open the Active tab.
- Open the database cluster page → Users tab.
- Click Create user.
- Enter a name and password. Save the password—it will not be stored in the dashboard.
- Click Save.
Change a user password
After a cluster is created, the user password can be changed. Remember to update the password in your application.
- In the Dashboard, on the top menu, click Products and select Managed Databases.
- Open the Active tab.
- Open the cluster page → Users tab.
- In the menu for the user, select Change password.
- Enter or generate a new password and save the changes.
Configure database access
Grant access to a user
Access to a single MySQL sync database can be granted to multiple users.
- In the Dashboard, on the top menu, click Products and select Managed Databases.
- Open the Active tab.
- Open the database cluster page → Databases tab → database page.
- In the Have access block, click Add and select a user.
The user can only connect to the database (CONNECT) and cannot perform operations on objects. To grant the user access to objects, grant them the necessary privileges.
Revoke access for a user
- In the Dashboard, on the top menu, click Products and select Managed Databases.
- Open the Active tab.
- Open the database cluster page → Databases tab → database page.
- In the Have access block, remove the user.
Configure user privileges
Grant privileges
You can grant database and table privileges to users using the GRANT command. Privileges can include: SELECT, INSERT, DELETE, USAGE, and others.
Example of granting read access (SELECT) to table table in database database to user user:
GRANT SELECT ON table TO user;
Example of granting read access (SELECT) to database database to user user:
GRANT SELECT ON database.* TO user;
Create a read-only user
-
Grant the user access to the database.
-
Create another user who will have read-only (read-only) privileges.
-
Connect to the database using the first user.
-
Grant read-only privileges to the database for the second user:
REVOKE ALL PRIVILEGES ON <database_name>.* FROM '<username>'@'%';GRANT SELECT ON <database_name>.* TO '<username>'@'%';Specify:
<database_name>— the database name;<username>— the name of the user to be granted read-only privileges</g.
Revoke privileges
You can revoke user privileges using the REVOKE command.
Example of revoking a privilege from user user for table table and database database:
REVOKE SELECT ON table FROM user;
REVOKE SELECT ON database.* FROM user;