docker搭建mysql8

获取镜像

docker pull mysql:8.0.18

创建数据挂载目录

mkdir -p /data/mysql/conf /data/mysql/data /data/mysql/log

创建数据库配置文件

vi /data/mysql/conf/my.cnf
[mysqld]
user=mysql
character-set-server=utf8
#default_authentication_plugin=123456
secure_file_priv=/var/lib/mysql
expire_logs_days=7
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
max_connections=2500
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8

启动容器

docker run -itd -p 3306:3306 --name mysql -v /data/mysql/conf/my.cnf:/etc/mysql/my.cnf:rw -v /data/mysql/log:/var/log/mysql:rw -v /data/mysql/data:/var/lib/mysql:rw -v /etc/localtime:/etc/localtime:ro -e MYSQL_ROOT_PASSWORD=123456 --restart=always --network=host mysql:8.0.18

给root用户设置密码

alter user 'root'@'localhost' identified with mysql_native_password by '123456';
flush privileges;

创建root远程连接用户并授权

use mysql
create user 'root'@'%' IDENTIFIED BY '123456';
grant all privileges on *.* to 'root'@'%' with grant option;
flush privileges;

远程登录即可

猜你喜欢

转载自blog.csdn.net/qq_33235529/article/details/108273467