宝塔面板MySQL如何安装两个版本?

在宝塔面板中安装两个版本的 MySQL 是可行的,但需要注意的是,MySQL 的不同版本不能同时使用相同的端口(默认 3306)和数据目录。因此你需要进行一些手动配置来实现多个 MySQL 版本共存。

下面是详细的步骤指南:


🧩 一、前提条件

  • 系统:CentOS / Ubuntu / Debian(推荐 CentOS)
  • 宝塔面板:最新稳定版
  • 已安装一个版本的 MySQL(例如 MySQL 5.6)

✅ 二、安装第二个 MySQL 版本(如 MySQL 8.0)

方法一:通过宝塔软件商店安装(推荐)

  1. 登录宝塔面板 → 软件商店 → 搜索 MySQL
  2. 如果当前已安装了 MySQL 5.6,可以继续安装 MySQL 8.0:
    • 点击安装 MySQL 8.0(会自动以不同的端口安装,比如 3307)
    • 安装时会提示是否启用多实例,选择

✅ 宝塔从某个版本开始支持多版本 MySQL 共存(需面板 v7.x 以上)


方法二:手动编译安装(进阶用户)

如果你使用的宝塔版本不支持多版本共存,或者你希望更灵活控制,可以手动安装另一个版本的 MySQL。

步骤如下:

1. 下载并安装新的 MySQL 版本(如 MySQL 8.0)

wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.xx-linux-glibc2.12-x86_64.tar.xz
tar xf mysql-8.0.xx-linux-glibc2.12-x86_64.tar.xz
mv mysql-8.0.xx-linux-glibc2.12-x86_64 /usr/local/mysql8

2. 创建数据目录和配置文件

mkdir /usr/local/mysql8/data
groupadd mysql
useradd -r -g mysql -s /bin/false mysql
chown -R mysql:mysql /usr/local/mysql8

创建配置文件 /etc/my8.cnf

[client]
port=3307
socket=/tmp/mysql8.sock

[mysqld]
port=3307
socket=/tmp/mysql8.sock
basedir=/usr/local/mysql8
datadir=/usr/local/mysql8/data
server-id=2
log-error=/usr/local/mysql8/data/error.log
pid-file=/usr/local/mysql8/data/mysql.pid

3. 初始化数据库

cd /usr/local/mysql8
bin/mysqld --defaults-file=/etc/my8.cnf --initialize --user=mysql

初始化完成后会生成临时密码,请记录下来。

4. 启动 MySQL 8.0

bin/mysqld_safe --defaults-file=/etc/my8.cnf &

5. 设置 root 密码

bin/mysql -u root -p -S /tmp/mysql8.sock

进入后修改密码:

ALTER USER 'root'@'localhost' IDENTIFIED BY '你的新密码';

🔁 三、管理多个 MySQL 实例

你可以通过以下方式连接不同的 MySQL 实例:

实例 端口 套接字文件
MySQL 5.6 3306 /tmp/mysql.sock
MySQL 8.0 3307 /tmp/mysql8.sock

使用命令行连接:

# 连接 MySQL 5.6
mysql -u root -p -P 3306 -h 127.0.0.1

# 连接 MySQL 8.0
mysql -u root -p -S /tmp/mysql8.sock

🧪 四、测试与注意事项

  • 不同的 MySQL 实例之间不能共享数据库文件。
  • 宝塔面板默认只管理第一个 MySQL 实例,第二个需要手动维护。
  • 可以写脚本或 systemd 服务来开机自启动第二个 MySQL。

示例 systemd 配置(保存为 /etc/systemd/system/mysql8.service):

[Unit]
Description=MySQL 8.0 Server
After=network.target

[Service]
User=mysql
Group=mysql
ExecStart=/usr/local/mysql8/bin/mysqld_safe --defaults-file=/etc/my8.cnf
Restart=always

[Install]
WantedBy=multi-user.target

然后执行:

systemctl daemon-reload
systemctl enable mysql8
systemctl start mysql8

✅ 总结

步骤 内容
✅ 推荐方式 在宝塔软件商店直接安装另一个版本(如 MySQL 8.0)
⚠️ 注意事项 端口不能冲突,数据目录要独立
💡 高级用法 手动安装 + 多实例配置 + systemd 管理
📌 宝塔限制 默认只管理一个 MySQL,其他需要手动操作

如果你告诉我你已经安装了哪个版本的 MySQL 和宝塔版本号,我可以提供更具体的安装建议!

未经允许不得转载:CLOUD技术博 » 宝塔面板MySQL如何安装两个版本?