这篇文章上次修改于 417 天前,可能其部分内容已经发生变化,如有疑问可询问作者。
docker部署mysql8.0
docker pull mysql:8.0
docker images
mkdir -p /data/mysql/conf
mkdir -p /data/mysql/data
mkdir -p /data/mysql/logs
vi /data/mysql/conf/my.cnf
[client]
port = 3308
default-character-set = utf8mb4
[mysql]
port = 3308
default-character-set = utf8mb4
[mysqld]
# bind-address = 0.0.0.0
# port = 3306
max_connections=10000
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
# 设置时区和字符集
# default-time-zone='+8:00'
character-set-client-handshake=FALSE
init_connect='SET NAMES utf8mb4 COLLATE utf8mb4_unicode_ci'
gtid-mode=ON
enforce-gtid-consistency = ON
启动镜像
docker run -d --name mysql8.0 --privileged=true -v /d/dockerspace/mysql8.0/conf:/etc/mysql/conf.d:rw -v /d/dockerspace/mysql8.0/data:/var/lib/mysql:rw -v /d/dockerspace/mysql8.0/logs:/var/log/mysql:rw -v /d/dockerspace/mysql8.0/mysql-files:/var/lib/mysql-files:rw -p 3308:3306 -e MYSQL_ROOT_PASSWORD='123456' -d mysql:8.0
更改容器时间
[root@tseng ~]# docker exec -it mysql8.0 bash
root@a498923c0bd3:/# date
Tue Aug 3 06:44:32 UTC 2021
root@a498923c0bd3:/# cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
root@a498923c0bd3:/# exit
[root@tseng /]# docker restart mysql8.0 -- 重启镜像
[root@tseng /]# docker exec -it mysql8.0 bash
root@a498923c0bd3:/# date
Tue Aug 3 14:45:35 CST 2021
设置远程访问
mysql -u root -p123456 -h localhost
use mysql
# 查看:
select host,user,plugin from user;
# 删除多余的行:delete from user where user ='root' and host='%';
# 设置所有host可以访问:
update user set host='%' where user ='root';
# 修改密码:
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
# 刷一下,使之生效:
FLUSH PRIVILEGES;
# 退出:
exit
参考
# one
docker run -d --name mysql8.0 --privileged=true -v /d/dockerspace/mysql8.0/conf:/etc/mysql/conf.d:rw -v /d/dockerspace/mysql8.0/data:/var/lib/mysql:rw -v /d/dockerspace/mysql8.0/logs:/var/log/mysql:rw -v /d/dockerspace/mysql8.0/mysql-files:/var/lib/mysql-files:rw -p 3308:3306 -e MYSQL_ROOT_PASSWORD='123456' -d mysql:8.0
# two
docker run --restart=always --name mysql3309.8.0.18 -v /data/mysql3309/conf:/etc/mysql -v /data/mysql3309/data:/var/lib/mysql -v /data/mysql3309/log:/var/log -v /data/mysql3309/mysql-files:/var/lib/mysql-files -p 3309:3306 -e MYSQL_ROOT_PASSWORD='123456' -d mysql:8.0.18 --lower_case_table_names=1
没有评论