Depending on your Linux distribution, you may need to start the mysql daemon yourself to prepare the MySQL system database. If you are using SuSE 10.x, you need to enter the following through sudo or as root:
linux:~> /etc/init.d/mysql start
In addition to initializing the system database, you will be reminded to set the MySQL root password. Do that as follows:
linux:~> mysqladmin -u root password [password]
This will set up the root account password for those localhost connections you make to the MySQL database server. Remember the password you use because you'll need it in a moment.
The majority of your interaction with MySQL will be during the configuration
and development of your Drupal Web site. To verify that your MySQL
installation is correct and the database server is running properly, we'll test
that the server is working by connecting to the database named
linux:~> mysql -u root -p mysql
You will be prompted to enter your password. Then you should see something similar to Listing 2.
Listing 2. MySQL prompt from the command line
Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 28 to server version: 4.0.26-log Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql>
If you see the preceding prompt, your MySQL server is running and correctly configured. We are now going to create the Drupal database, drupal_db, and the user, drupal_user, who will own the database. Enter the MySQL commands in Listing 3 at the prompt (where password is the password for the drupal_user user):
Listing 3. Configuring MySQL from the command line
mysql> create database drupal_db; mysql> grant select, insert, update, delete, create, drop, index, alter, create temporary tables, lock tables on drupal_db.* to 'drupal_user'@'localhost' identified by 'password'; mysql> flush privileges; mysql> quit
You can also use the grant privileges in Listing 4.
mysql> grant all privileges on drupal_db.* 'drupal_user'@'localhost' identified by 'password';
This is correct, but not as secure as the more verbose version in Listing 3. You don't want to use it on your production server. We will use the same command in development as in production to practice good security.
Now that MySQL is working we can install and configure Drupal. Keep your terminal window open because we will need it while we install Drupal.