docker安装mysql
首先建立好数据卷映射到宿主机的路径:
[root@microservice opt]# mkdir -p /opt/docker/mysql
[root@microservice opt]# mkdir -p /opt/docker/mysql/data
创建my.cnf配置文件
[root@microservice opt]# vi /opt/docker/mysql/my.cnf
[mysqld]
# 时区
default_time_zone = '+8:00'
# 字符集(如需 unicode_ci 就保留)
character_set_server = utf8mb4
collation_server = utf8mb4_unicode_ci
# 忽略表名大小写
lower_case_table_names = 1
# 连接数
max_connections = 200
# 临时表
tmp_table_size = 64M
max_heap_table_size = 64M
# InnoDB 性能优化
innodb_buffer_pool_size = 8G
innodb_log_file_size = 1G
innodb_log_buffer_size = 128M
# 慢查询
slow_query_log = 1
long_query_time = 2
然后一条命令搞定mysql:
[root@microservice opt]# docker run -d --name mysql --privileged=true --restart=always -p 3308:3306 -v /opt/docker/mysql/data:/var/lib/mysql -v /opt/docker/mysql/my.cnf:/etc/mysql/my.cnf -e MYSQL_ROOT_PASSWORD=neIIqlwGsjsfsA6uxNqD -e TZ=Asia/Shanghai mysql:8.0.36
当观察到STATUS为UP状态时,基本上mysql就已经可以使用了:
[root@microservice opt]# docker ps
设置mysql允许远程访问:
[root@microservice]# docker exec -it mysql mysql /bin/bash
bash-4.4# mysql -uroot -pneIIqlwGsjsfsA6uxNqD mysql> ALTER user 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'neIIqlwGsjsfsA6uxNqD'; mysql> FLUSH PRIVILEGES;
云服务器开通3308端口后重启就可以使用了!!!
如果需要开启mysql审计日志:
vi my.cnf 增加: log_bin = /var/lib/mysql/mysql_bin server_id =1 general_log_file = /var/log/mysql/mysql.log general_log = 1
建立好数据卷映射到宿主机的审计日志路径:
[root@microservice]# mkdir -p /opt/docker/mysql/logs [root@microservice]# vi mysql.log
docker重新安装mysql:
[root@microservice]# docker stop mysql [root@microservice]# docker rm mysql [root@microservice]# docker run -d --name mysql --privileged=true --restart=always -p 3308:3306 -v /opt/docker/mysql/data:/var/lib/mysql -v /opt/docker/mysql/my.cnf:/etc/mysql/my.cnf -v /opt/docker/mysql/logs/mysql.log:/var/log/mysql/mysql.log -e MYSQL_ROOT_PASSWORD=neIIqlwGsjsfsA6uxNqD -e TZ=Asia/Shanghai mysql:8.0.36
mysql导入数据:
docker exec -i mysql kjzsq < /opt/kjzsq.sql
mysql导出数据:
docker exec -it mysql mysqldump -uroot -pneIIqlwGsjsfsA6uxNqD kjzsq > /opt/kjzsq.sql

浙公网安备 33010602011771号