简介:本文将详细指导如何在Linux系统中同时安装、配置和使用MySQL 5.7与MySQL 8.0,确保两者互不干扰,满足不同的项目需求。
在Linux系统中,有时我们可能需要同时运行不同版本的MySQL数据库,以满足不同的项目需求。本文将指导您如何在同一台服务器上安装、配置和使用MySQL 5.7与MySQL 8.0,确保两者能够并行运行,互不干扰。
一、安装MySQL 5.7
访问MySQL官方下载页面,获取适用于Linux的MySQL 5.7的YUM源安装包,并在您的Linux服务器上执行以下命令进行安装:
sudo rpm -ivh mysql57-community-release-el7-11.noarch.rpm
使用YUM命令安装MySQL 5.7服务器:
sudo yum install mysql-community-server
sudo systemctl start mysqldsudo systemctl enable mysqld
sudo grep 'temporary password' /var/log/mysqld.logsudo mysql -uroot -pALTER USER 'root'@'localhost' IDENTIFIED BY 'YourNewPassword';
二、安装MySQL 8.0
同样访问MySQL官方下载页面,获取适用于Linux的MySQL 8.0的YUM源安装包,并在您的Linux服务器上执行以下命令进行安装:
sudo rpm -ivh mysql80-community-release-el7-3.noarch.rpm
使用YUM命令安装MySQL 8.0服务器:
sudo yum install mysql-community-server
由于MySQL 8.0的服务名与MySQL 5.7不同,因此需要使用不同的命令启动:
sudo systemctl start mysqld8sudo systemctl enable mysqld8
sudo grep 'temporary password' /var/log/mysqld8.logsudo mysql -uroot -pALTER USER 'root'@'localhost' IDENTIFIED BY 'YourNewPassword';
三、配置MySQL 5.7和MySQL 8.0并行运行
/etc/my.cnf或/etc/mysql/my.cnf):在[mysqld]部分下添加或修改以下配置,为MySQL 5.7指定一个不同的端口和数据目录:
[mysqld]port = 3306datadir = /var/lib/mysql57socket = /var/lib/mysql57/mysql.sock
/etc/my.cnf.d/mysqld.cnf):在[mysqld]部分下添加或修改以下配置,为MySQL 8.0指定一个不同的端口和数据目录:
[mysqld]port = 3307datadir = /var/lib/mysql80socket = /var/lib/mysql80/mysql.sock
sudo systemctl restart mysqldsudo systemctl restart mysqld8
四、使用MySQL 5.7和MySQL 8.0
现在,您可以通过指定不同的端口来连接MySQL 5.7和MySQL 8.0了。例如,使用命令行客户端连接MySQL 5.7:
mysql -h localhost -P 3306 -uroot -p
连接MySQL 8.0:
```bash
mysql -h localhost -P 3307 -uroot -