diboot

Docker同时安装MySQL和MariaDB

2019-09-28  本文已影响0人  一个鸡蛋壳儿

MySQL和MariaDB的关系

MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可。
MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。

看完MySQL和MariaDB的关系,我们一定会想:既然两者有这么紧密的关系,那么同时安装、启动的时候,是否会有冲突呢?

答案是肯定的,比如:`本文主要讲解的端口号`。我们先看两者的安装,然后在配置阶段,将MariaDB的端口号与MySQL区分开。

Docker安装MySQL

  1. 查找Docker Hub上MySQL的镜像

    docker search mysql
    
  2. 选择某个镜像安装(这里我们选择centos/mysql-57-centos7)

    docker pull centos/mysql-57-centos7
    
  3. 启动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

  1. 查找Docker Hub上MariaDB的镜像

    docker search mariadb
    
  2. 选择某个镜像安装(这里我们选择官方镜像)

    docker pull mariadb
    
  3. 启动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 查看

image.png

MariaDB端口配置

虽然MariaDB启动使用的3309端口,我们远程访问时,却无法访问。

  1. 进入容器目录

    docker exec -it 容器id bash
    
  2. 更新配置文件

    vi /etc/mysql/my.cnf
    
image.png
  1. 重启

    docker restart 容器id
    

再次远程连接访问,正常!

diboot 简单高效的轻代码开发框架 (求star)

上一篇下一篇

猜你喜欢

热点阅读