Docker运行Mariadb数据库读写分离

按网上的方法:

docker run -d -p 3306:3306 –restart always -e MYSQL_ROOT_PASSWORD={password} –name db-mysql -v /docker/mysql/:/var/lib/mysql mysql/mysql-server

结果只会提示root用户无法登录,要构建一个完好的分离环境,应当按如下步骤:

1、首先建立一个docker容器,自动下载最新镜像。

docker run -d -p 3306:3306 –restart always -e MYSQL_ROOT_PASSWORD={password} –name db-mariadb docker.io/mariadb:latest

2、进入容器中进行配置mysql

docker exec -it db-mariadb bash

3、正常配置mariadb数据库

4、从容器中退出

exit

5、本机建立用于存放数据库文件的目录Docker

mkdir /Docker

6、将容器中数据文件拷出到本机

docker cp db-mariadb:/var/lib/mysql /docker/

7、停止原来的容器并删除

docker stop db-mariadb

dokcer rm db-mariadb

8、创建新容器,并进行目录挂载,注意系统中如果开启了selinux,一定要加上–privileged=true。

docker run -d -p 3306:3306 –restart always -e MYSQL_ROOT_PASSWORD={password} –name db-mariadb -v /docker/mysql:/var/lib/mysql –privileged=true mariadb

发表评论

电子邮件地址不会被公开。 必填项已用*标注