步骤
1.安装docker
2.准备
创建mysql数据存放文件夹
[root@localhost~]# mkdir -p /data/docker-mysql/data
创建配置文件
[root@localhost~]# cat << EOF > /data/docker-mysql/my.cnf
[mysql]
default-character-set=utf8mb4
[mysqld]
default-time_zone = '+8:00' # 设置时区,要不时间会错误
character-set-server=utf8mb4
port=3306
bind-address = 0.0.0.0
log-bin = /var/lib/mysql/mysql-bin.log
binlog_format = MIXED # 指定日志格式
expire-logs-days = 14
max-binlog-size = 500M
server-id = 1
skip-name-resolve
max_connections = 2048
wait_timeout = 86400
interactive_timeout = 7200
max_connect_errors = 10000000
max_allowed_packet = 500M
EOF
3.创建mysql容器
-e MYSQL_ROOT_PASSWORD
指定密码
[root@localhost~]# docker container run -d --name mysql --network mall \
--restart=always -p 3306:3306 \
-v /data/docker-mysql/my.cnf:/etc/mysql/conf.d/mysql.cnf \
-v /data/docker-mysql/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD='123456' \
mysql:5.7.31 \
--character-set-server=utf8mb4
4.测试
[root@localhost~]# docker container exec -it mysql mysql -uroot -p123456
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.31-log MySQL Community Server (GPL)
Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>