一键部署脚本
#!/bin/bash
baseDir=/home/docker/mysql
# mysql密码
password=6G8fuuVU%4mgTgYm_+jx
mkdir -p ${baseDir}/conf ${baseDir}/data ${baseDir}/log
cd ${baseDir}/conf
cat > my.cnf <<-EOF
[mysqld]
user=mysql
character-set-server=utf8
default_authentication_plugin=mysql_native_password
secure_file_priv=/var/lib/mysql
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
max_connections=1000
explicit_defaults_for_timestamp=true
default-storage-engine=INNODB
skip-name-resolve
server_id=1
log_bin=mysql-bin
binlog_format=ROW
expire_logs_days=15
max_binlog_size=10G
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
EOF
docker run --name mysql -p 3306:3306 -v ${baseDir}/conf/my.cnf:/etc/mysql/my.cnf -v ${baseDir}/data:/var/lib/mysql -v ${baseDir}/log:/var/log/mysql -e MYSQL_ROOT_PASSWORD=${password} --privileged --restart=always -d mysql:5.7