openstack-manuals/doc/install-guide/source/environment-sql-database-ubuntu.rst
Alexandra Settle 30b95bf40e Adding a note for Ubuntu 18.4 mariadb users
We've had a number of users submit bugs stating
that mariadb-server is no longer available from
the default repo, and is causing errors.
This note should hopefully point new users
into the right direction.

Change-Id: Ie222779dee5166937820b9c48b05fef09ae56148
Closes-bug: #1807609
2019-02-15 16:00:49 +00:00

2.0 KiB

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

  1. Install the packages:

    # apt install mariadb-server python-pymysql
  2. Create and edit the /etc/mysql/mariadb.conf.d/99-openstack.cnf file and complete the following actions:

    • Create a [mysqld] section, and set the bind-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

  1. Restart the database service:

    # service mysql restart
  2. Secure the database service by running the mysql_secure_installation script. In particular, choose a suitable password for the database root account:

    # mysql_secure_installation