3.2. 在容器中运行多个 MySQL 和 MariaDB 版本


要在同一个主机上运行 MySQLMariaDB,请在容器中运行它们,因为由于 RPM 软件包冲突,您无法并行安装这些数据库服务器。

此流程以 MySQL 8.0MariaDB 10.5 作为示例,但您可以使用红帽生态系统目录中提供的任何 MySQLMariaDB 容器版本。

先决条件

  • container-tools 元数据包已安装。

流程

  1. 使用您的红帽客户门户网站帐户向 registry.redhat.io 注册中心进行身份验证:

    # podman login registry.redhat.io
    Copy to Clipboard Toggle word wrap

    如果您已登录到容器注册中心,请跳过这一步。

  2. 在容器中运行 MySQL 8.0

    $ podman run -d --name <container_name> -e MYSQL_ROOT_PASSWORD=<mysql_root_password> -p <host_port_1>:3306 rhel9/mysql-80
    Copy to Clipboard Toggle word wrap

    有关使用此容器镜像用法的更多信息,请参阅 红帽生态系统目录

  3. 在容器中运行 MySQL 8.4

    $ podman run -d --name <container_name> -e MYSQL_ROOT_PASSWORD=<mysql_root_password> -p <host_port_2>:3306 rhel9/mysql-84
    Copy to Clipboard Toggle word wrap

    有关使用此容器镜像用法的更多信息,请参阅 红帽生态系统目录

  4. 在容器中运行 MariaDB 10.5

    $ podman run -d --name <container_name> -e MYSQL_ROOT_PASSWORD=<mariadb_root_password> -p <host_port_3>:3306 rhel9/mariadb-105
    Copy to Clipboard Toggle word wrap

    有关使用此容器镜像用法的更多信息,请参阅 红帽生态系统目录

  5. 在容器中运行 MariaDB 10.11

    $ podman run -d --name <container_name> -e MYSQL_ROOT_PASSWORD=<mariadb_root_password> -p <host_port_4>:3306 rhel9/mariadb-1011
    Copy to Clipboard Toggle word wrap

    有关使用此容器镜像用法的更多信息,请参阅 红帽生态系统目录

    注意

    容器名称和两个数据库服务器的主机端口必须不同。

  6. 要确保客户端可以访问网络上的数据库服务器,请在防火墙中打开主机端口:

    # firewall-cmd --permanent --add-port={<host_port_1>/tcp,<host_port_2>/tcp,<host_port_3>/tcp,<host_port_4>/tcp,...}
    # firewall-cmd --reload
    Copy to Clipboard Toggle word wrap

验证

  1. 显示正在运行的容器的信息:

    $ podman ps
    Copy to Clipboard Toggle word wrap
  2. 连接到数据库服务器,并以 root 用户身份登录:

    # mysql -u root -p -h localhost -P <host_port> --protocol tcp
    Copy to Clipboard Toggle word wrap
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat