Setting Up a MySQL User Account
Problem
You need to create an account to use for connecting to the MySQL server running on a given host.
Solution
Use the GRANT statement to set up the MySQL user
account. Then use that account’s name and password
to make connections to the server.
Discussion
Connecting to a MySQL server requires a username and password. You can also specify the name of the host where the server is running. If you don’t specify connection parameters explicitly, mysql assumes default values. For example, if you specify no hostname, mysql typically assumes the server is running on the local host.
The following example shows how to use the mysql
program to connect to the server and issue a GRANT
statement that sets up a user account with privileges for accessing a
database named cookbook. The arguments to
mysql include -h
localhost to connect to the MySQL server running on
the local host, -p to tell mysql
to prompt for a password, and -u
root to connect as the MySQL root
user. Text that you type is shown in bold; non-bold text is program
output:
%mysql -h localhost -p -u rootEnter password:******mysql>GRANT ALL ON cookbook.* TO 'cbuser'@'localhost' IDENTIFIED BY 'cbpass';Query OK, 0 rows affected (0.09 sec) mysql>QUITBye
After you enter the mysql command shown on the
first line, if you get a message indicating that the program cannot
be found or that it is a bad command, see Recipe 1.8. Otherwise, when mysql
prints the password prompt, enter the MySQL root password ...