SQL database for Ubuntu¶
Most OpenStack services use an SQL database to store information. The database typically runs on the controller node. The procedures in this guide use MariaDB or MySQL depending on the distribution. OpenStack services also support other SQL databases including PostgreSQL.
Note
As of Ubuntu 16.04, MariaDB was changed to use the “unix_socket Authentication Plugin”. Local authentication is now performed using the user credentials (UID), and password authentication is no longer used by default. This means that the root user no longer uses a password for local access to the server.
Note
As of Ubuntu 18.04, the mariadb-server
package is no longer
available from the default repository. To install successfully,
enable the Universe
repository on Ubuntu.
Install and configure components¶
Install the packages:
As of Ubuntu 20.04, install the packages:
# apt install mariadb-server python3-pymysql
As of Ubuntu 18.04 or 16.04, install the packages:
# apt install mariadb-server python-pymysql
Create and edit the
/etc/mysql/mariadb.conf.d/99-openstack.cnf
file and complete the following actions:Create a
[mysqld]
section, and set thebind-address
key to the management IP address of the controller node to enable access by other nodes via the management network. Set additional keys to enable useful options and the UTF-8 character set:[mysqld] bind-address = 10.0.0.11 default-storage-engine = innodb innodb_file_per_table = on max_connections = 4096 collation-server = utf8_general_ci character-set-server = utf8
Finalize installation¶
Restart the database service:
# service mysql restart
Secure the database service by running the
mysql_secure_installation
script. In particular, choose a suitable password for the databaseroot
account:# mysql_secure_installation