Ubuntu 上的 SQL 数据库

大多数 OpenStack 服务使用 SQL 数据库来存储信息。数据库通常在控制器节点上运行。本指南中的步骤使用 MariaDB 或 MySQL,具体取决于发行版。OpenStack 服务还支持其他 SQL 数据库,包括 PostgreSQL

注意

从 Ubuntu 16.04 开始,MariaDB 被更改为使用“unix_socket 身份验证插件”。本地身份验证现在使用用户凭据(UID)执行,默认情况下不再使用密码身份验证。这意味着 root 用户不再使用密码进行对服务器的本地访问。

注意

从 Ubuntu 18.04 开始,默认仓库中不再提供 mariadb-server 包。要成功安装,请在 Ubuntu 上启用 Universe 仓库。

安装和配置组件

  1. 安装软件包

    • 从 Ubuntu 20.04 开始,安装以下软件包

      # apt install mariadb-server python3-pymysql
      
    • 从 Ubuntu 18.04 或 16.04 开始,安装以下软件包

      # apt install mariadb-server python-pymysql
      
  2. 创建并编辑 /etc/mysql/mariadb.conf.d/99-openstack.cnf 文件并完成以下操作

    • 创建一个 [mysqld] 部分,并将 bind-address 键设置为控制器节点的管理 IP 地址,以启用通过管理网络由其他节点访问。设置其他键以启用有用的选项和 UTF-8 字符集

      [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
      

完成安装

  1. 重启数据库服务

    # service mysql restart
    
  1. 通过运行 mysql_secure_installation 脚本来保护数据库服务。特别是,为数据库 root 帐户选择一个合适的密码

    # mysql_secure_installation