INSTALL.mysql.txt

Same filename in other branches
  1. 7.x INSTALL.mysql.txt
  2. 9 core/INSTALL.mysql.txt
  3. 8.9.x core/INSTALL.mysql.txt
  4. 11.x core/INSTALL.mysql.txt
CREATE THE MySQL DATABASE
--------------------------

This step is only necessary if you don't already have a database set up (e.g.,
by your host). In the following examples, 'username' is an example MySQL user
which has the CREATE and GRANT privileges. Use the appropriate user name for
your system.

First, you must create a new database for your Drupal site (here,
'database_name' is the name of the new database):

  mysqladmin -u username -p create database_name

MySQL will prompt for the 'username' database password and then create the
initial database files. Next you must log in and set the access database rights:

  mysql -u username -p

Again, you will be asked for the 'username' database password. At the MySQL
prompt, enter the following command:

  GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER,
  CREATE TEMPORARY TABLES ON database_name.*
  TO 'username'@'localhost' IDENTIFIED BY 'password';

where:

 'database_name' is the name of your database
 'username' is the username of your MySQL account
 'localhost' is the web server host where Drupal is installed
 'password' is the password required for that username

Note: Unless the database user/host combination for your Drupal installation
has all of the privileges listed above (except possibly CREATE TEMPORARY TABLES,
which is currently only used by Drupal core automated tests and some
contributed modules), you will not be able to install or run Drupal.

If successful, MySQL will reply with:

  Query OK, 0 rows affected

If the InnoDB storage engine is available, it will be used for all database
tables. InnoDB provides features over MyISAM such as transaction support,
row-level locks, and consistent non-locking reads.

File

core/INSTALL.mysql.txt

View source
  1. CREATE THE MySQL DATABASE
  2. --------------------------
  3. This step is only necessary if you don't already have a database set up (e.g.,
  4. by your host). In the following examples, 'username' is an example MySQL user
  5. which has the CREATE and GRANT privileges. Use the appropriate user name for
  6. your system.
  7. First, you must create a new database for your Drupal site (here,
  8. 'database_name' is the name of the new database):
  9. mysqladmin -u username -p create database_name
  10. MySQL will prompt for the 'username' database password and then create the
  11. initial database files. Next you must log in and set the access database rights:
  12. mysql -u username -p
  13. Again, you will be asked for the 'username' database password. At the MySQL
  14. prompt, enter the following command:
  15. GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER,
  16. CREATE TEMPORARY TABLES ON database_name.*
  17. TO 'username'@'localhost' IDENTIFIED BY 'password';
  18. where:
  19. 'database_name' is the name of your database
  20. 'username' is the username of your MySQL account
  21. 'localhost' is the web server host where Drupal is installed
  22. 'password' is the password required for that username
  23. Note: Unless the database user/host combination for your Drupal installation
  24. has all of the privileges listed above (except possibly CREATE TEMPORARY TABLES,
  25. which is currently only used by Drupal core automated tests and some
  26. contributed modules), you will not be able to install or run Drupal.
  27. If successful, MySQL will reply with:
  28. Query OK, 0 rows affected
  29. If the InnoDB storage engine is available, it will be used for all database
  30. tables. InnoDB provides features over MyISAM such as transaction support,
  31. row-level locks, and consistent non-locking reads.

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.