docker部署MySQL

1 做后台守护式mysql容器 端口3308运行 设置密码

docker run -di --name=mysql -p 3308:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7

2 做目录(配置文件和数据文件)和端口映射

2.1 创建文件夹

mkdir /mysql
mkdir /mysql/conf.d
mkdir /mysql/data/

2.2 书写配置文件

vim /mysql/my.cnf

# 书写以下内容
[client]
default-character-set=utf8
[mysqld]
user=mysql
character-set-server=utf8
default_authentication_plugin=mysql_native_password
secure_file_priv=/var/lib/mysql
expire_logs_days=7
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
max_connections=1000

2.3 端口映射

docker run -di -v /mysql/data/:/var/lib/mysql -v /mysql/conf.d:/etc/mysql/conf.d -v /mysql/my.cnf:/etc/mysql/my.cnf -p 3306:3306 --name mysql5.7 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7  

测试容器是否纯净

# 创建库,创建表,插入数据

# 关闭容器,删除容器,mysql的容器没了,但是数据在宿主机上放着
 docker stop mysql2
 docker rm mysql2
 docker rm mysql -f  

# 再运行起一个容器,做好目录映射,发现数据都回来了
docker run -di -v /mysql/data/:/var/lib/mysql -v /mysql/conf.d:/etc/mysql/conf.d -v /mysql/my.cnf:/etc/mysql/my.cnf -p 3307:3306 --name mysql2 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7 
posted @ 2024-03-13 19:59  wellplayed  阅读(32)  评论(0编辑  收藏  举报