MySQL和MariaDB的关系
MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可。
MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。
看完MySQL和MariaDB的关系,我们一定会想:既然两者有这么紧密的关系,那么同时安装、启动的时候,是否会有冲突呢?
答案是肯定的,比如:`本文主要讲解的端口号`。我们先看两者的安装,然后在配置阶段,将MariaDB的端口号与MySQL区分开。
Docker安装MySQL
-
查找Docker Hub上MySQL的镜像
docker search mysql -
选择某个镜像安装(这里我们选择centos/mysql-57-centos7)
docker pull centos/mysql-57-centos7 -
启动MySQL
docker run -p 3306:3306 --name mysql-57 -v /my/mysql/conf:/etc/mysql/conf.d -v /my/mysql/logs:/logs -v /my/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=xxx -d centos/mysql-57-centos7
Docker安装MariaDB
-
查找Docker Hub上MariaDB的镜像
docker search mariadb -
选择某个镜像安装(这里我们选择官方镜像)
docker pull mariadb -
启动MariaDB
docker run -v /my/mariadb/:/var/lib/mariadb -p 3309:3309 -e MYSQL_ROOT_PASSWORD=xxx --privileged=true --restart unless-stopped --name mariadbs -d mariadb:latest
注意:MariaDB启动使用的3309端口,MySQL使用的默认3306端口。
启动完成,docker ps 查看

MariaDB端口配置
虽然MariaDB启动使用的3309端口,我们远程访问时,却无法访问。
-
进入容器目录
docker exec -it 容器id bash -
更新配置文件
vi /etc/mysql/my.cnf

-
重启
docker restart 容器id
再次远程连接访问,正常!

本文详细介绍了MySQL和其分支MariaDB之间的关系,并指导如何通过调整端口号避免两者在同一系统中并存时的冲突。通过Docker安装与配置,实现了MySQL与MariaDB的共存,确保了两个数据库系统的独立运行。
1148

被折叠的 条评论
为什么被折叠?



