#拉取mysql镜像
docker pull mysql:5.7
#建立 挂载容器中的配置文件、数据文件、插件数据到本机的文件夹
mkdir -p /opt/docker/mysql/data
mkdir -p /opt/docker/mysql/conf
touch /opt/docker/mysql/conf/my.cnf
#启动mysql容器
–name指定容器名字 -v目录挂载 -p指定端口映射 -e设置mysql参数 -d后台运行
#前面是主机,后面是容器,初始密码是root
docker run --name mysql -v /opt/docker/mysql/data:/var/lib/mysql -v /opt/docker/mysql/conf:/etc/mysql/conf.d -v /opt/docker/mysql/log:/var/log/mysql -e MYSQL_ROOT_PASSWORD=root -p 3306:3306 -d mysql:5.7
#进入mysql容器
docker exec -it mysql bin/bash
bash-4.2# mysql -uroot -p
mysql>alter user user() identified by “123456”;
mysql>flush privileges;
#添加配置文件
vim /opt/docker/mysql/conf/my.cnf
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8’
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
max_connections=10000
# set time-zone
default-time-zone = '+8:00'
#重启容器
docker restart mysql
#docker自动启动容器命令
docker update mysql --restart=always