MySQL 和 MariaDB 可以在同一台服务器上共存,但需要仔细配置以避免冲突。以下是关键考虑因素和实现方案:
修改其中一个的配置文件:
/etc/my.cnf
或 /etc/mysql/my.cnf
/etc/my.cnf.d/server.cnf
修改内容示例(以修改MariaDB为例):
[mysqld]
port = 3307
socket = /var/lib/mysql/mariadb.sock
datadir = /var/lib/mariadb
确保服务使用不同的数据目录
# 运行MySQL容器
docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -p 3306:3306 -d mysql
# 运行MariaDB容器
docker run --name some-mariadb -e MYSQL_ROOT_PASSWORD=my-secret-pw -p 3307:3306 -d mariadb
连接时指定不同端口:
# 连接MySQL(默认3306)
mysql -u root -p
# 连接MariaDB(假设端口3307)
mysql -u root -p -P 3307
MySQL和MariaDB可以共存,但建议仅在测试或特殊需求场景下这样做。生产环境通常建议选择其中一种以避免不必要的复杂性。