Docker 安装 mysql

2021-10-27  本文已影响0人  无聊之人1123

1、拉取镜像

docker pull mysql

2、创建一个mysql 镜像

docker run -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD="123456" -d mysql

3、进入mysql容器,指定配置文件在linux服务器挂载的路径

//进入mysql容器

docker exec -it mysql bash//查看配置文件位置

mysql --help | grep my.cnf

//退出容器

exit

//创建linux服务器上配置文件路径与数据库存储路径

mkdir -p /home/docker-mysql/conf && mkdir -p /home/docker-mysql/data

//将容器内的配置文件复制到linux服务器

docker cp mysql:/etc/mysql/my.cnf /home/docker-mysql/conf/my.cnf

//修改配置文件

vim /home/docker-mysql/conf/my.cnf

//想改的配置往里写就完事了

4、移除旧的mysql容器,创建新的mysql容器

//查看mysql容器的id

docker  ps

//停止正在运行的mysql容器

docker stop 543a1feee7f3

//删除mysql容器

docker rm 543a1feee7f3

//重新创建容器

docker run --name mysql -p 3306:3306 -d  -v /home/docker-mysql/conf/my.cnf:/etc/mysql/my.cnf -v /home/docker-mysql/data:/var/lib/mysql -v /home/docker-mysql/log:/logs -e MYSQL_ROOT_PASSWORD=123456 --restart=always  mysql --lower_case_table_names=1

-e MYSQL_ROOT_PASSWORD 设置mysql密码

-v /home/data/mysql/conf/my.cnf:/etc/mysql/my.cnf 挂载配置文件路径

-v /home/mysql/:/var/lib/mysql 挂载磁盘实现数据持久化

--restart=always 容器异常停止后自动重启

--lower_case_table_names=1 忽略大小写,docker mysql默认区分大小写的

navcat 连接mysql 报错  mysql caching_sha2_password' cannot be loaded

mysql> use mysql;

mysql> ALTER USER 'root'@'%' IDENTIFIED BY 'root' PASSWORD EXPIRE NEVER;    //修改root用户的加密规则

mysql> ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root'; //修改root用户的密码为root

mysql> flush privileges;    //刷新权限

上一篇下一篇

猜你喜欢

热点阅读