宝塔怎么安装MySQL多个版本的?

在宝塔面板中安装多个版本的 MySQL 是可行的,但需要注意的是:默认情况下宝塔只允许安装一个 MySQL 实例(即使用 3306 端口)。如果需要在同一台服务器上运行多个 MySQL 版本,通常需要通过自定义安装、修改端口和数据目录等方式实现。

下面是详细的操作步骤:


🧩 准备工作

  • 操作系统:CentOS / Ubuntu / Debian(建议 CentOS 7+)
  • 宝塔面板版本:建议 7.x 及以上
  • 已安装一个 MySQL(如 5.6),用于主站等用途

✅ 方法一:使用宝塔安装一个 MySQL,另一个手动编译或 RPM/DEB 安装

步骤 1:使用宝塔安装第一个 MySQL 版本

  • 登录宝塔面板 → 软件商店 → 安装一个 MySQL(例如 5.6)

步骤 2:手动安装第二个 MySQL 版本(例如 8.0)

方式 A:使用源码编译安装(推荐高级用户)

优点:灵活可控,可指定端口、数据目录
缺点:复杂,需要一定 Linux 技能

方式 B:使用官方 RPM 或 DEB 包安装(适用于 CentOS/Ubuntu)

以 CentOS 为例:

# 下载 MySQL 8.0 的 repo
sudo rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-7.noarch.rpm

# 安装 MySQL 8.0(不会与宝塔安装的冲突)
sudo yum install mysql-server

步骤 3:配置多实例

你需要修改新安装的 MySQL 配置文件(如 /etc/my.cnf/etc/mysql/conf.d/xxx.cnf),确保它不使用默认端口 3306 和数据目录(避免与宝塔的冲突)。

示例配置:

[mysqld]
port=3307
socket=/tmp/mysql2.sock
datadir=/data/mysql2
pid-file=/data/mysql2/mysqld.pid
server-id=2

创建数据目录并初始化:

mkdir -p /data/mysql2
mysql_install_db --user=mysql --datadir=/data/mysql2

启动服务:

systemctl start mysqld

注意:你可能需要设置开机自启,并根据你的发行版调整服务名称。


✅ 方法二:使用 Docker 安装多个 MySQL 实例(推荐)

如果你熟悉 Docker,这是最简单的方式。

示例:运行两个不同版本的 MySQL 容器

# 启动 MySQL 5.7
docker run --name mysql57 -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 -d mysql:5.7

# 启动 MySQL 8.0
docker run --name mysql80 -e MYSQL_ROOT_PASSWORD=123456 -p 3307:3306 -d mysql:8.0

现在你可以通过以下方式连接:

  • MySQL 5.7:localhost:3306
  • MySQL 8.0:localhost:3307

这样就不会与宝塔本身安装的 MySQL 冲突。


🔒 安全注意事项

  • 多个数据库实例不要共用同一个端口或数据目录
  • 如果是生产环境,请做好权限控制和备份策略
  • 使用防火墙限制外部访问敏感端口(如 3306、3307)

📌 总结

方法 是否推荐 说明
宝塔 + 手动安装 适合有一定 Linux 基础的用户
宝塔 + 源码安装 不推荐 复杂且容易出错
宝塔 + Docker 安装 ✅ 推荐 简单、隔离性好,适合开发测试

如果你告诉我你当前使用的操作系统和具体需求(比如你要运行哪些程序、是否为生产环境等),我可以提供更具体的安装脚本或命令。

未经允许不得转载:CLOUD技术博 » 宝塔怎么安装MySQL多个版本的?