1、拉取mysql镜像 docker pull mysql:5.7

2、创建lm2路径,用于映射容器中mysql数据 mkdir lm2 3、运行mysql --privileged=true这个赋予容器操作权限 docker run -d -p 13306:3306 -v /lm2:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 --privileged=true --name mysql01 mysql:5.7 4、上面启动好容器id 57b371992909 my.cnf 拷贝到/lm 方便修改 docker cp 57b371992909:/etc/my.cnf /lm/ 5、修改/lm下的my.cnf文件内容 [mysqld] #binlog格式 binlog_format = mixed #存放地址,注意这个地址是docker容器里面的地址,不是宿主机里面的地址 log-bin=/var/lib/mysql/mysql-bin server-id=123654 #存放时间 expire_logs_days=30 #最大文件大小 max_binlog_size=50m #缓存大小 binlog_cache_size=10m #最大缓存大小 max_binlog_cache_size=512m [mysql] default-character-set = utf8mb4 [mysql.server] default-character-set = utf8mb4 [mysqld_safe] default-character-set = utf8mb4 [client] default-character-set = utf8mb4 [mysqld] character_set_server = utf8mb4 init_connect=‘SET NAMES utf8mb4’ 6、将修改好的my.cnf文件放入到容器中 docker cp /lm/my.cnf 57b371992909:/etc/

7、重启容器 docker restart 57b371992909 8、查看镜像是否启动ok docker ps -a 9、没有启动成功的话查看错误日志 docker logs 57b371992909 --follow 10、进入容器内部 docker exec -it 57b371992909 /bin/bash 11、进入mysql 输入 root密码 mysql -u root -p 12、查看是否设置成功 mysql> show variables like ‘log_%’; ±---------------------------------------±-------------------------------+ | Variable_name | Value | ±---------------------------------------±-------------------------------+ | log_bin | ON | | log_bin_basename | /var/lib/mysql/mysql-bin | | log_bin_index | /var/lib/mysql/mysql-bin.index | | log_bin_trust_function_creators | OFF | | log_bin_use_v1_row_events | OFF | | log_builtin_as_identified_by_password | OFF | | log_error | stderr | | log_error_verbosity | 3 | | log_output | FILE | | log_queries_not_using_indexes | OFF | | log_slave_updates | OFF | | log_slow_admin_statements | OFF | | log_slow_slave_statements | OFF | | log_statements_unsafe_for_binlog | ON | | log_syslog | OFF | | log_syslog_facility | daemon | | log_syslog_include_pid | ON | | log_syslog_tag | | | log_throttle_queries_not_using_indexes | 0 | | log_timestamps | UTC | | log_warnings | 2 | ±---------------------------------------±-------------------------------+ 21 rows in set (0.01 sec)

13、设置远程访问,外部客户端就可以连接了 mysql> grant all privileges on . to root@‘%’ identified by ‘123456’ with grant option; Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql> flush privileges; Query OK, 0 rows affected (0.00 sec 14、navicat测试

List item

相关阅读

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: