拉取镜像

1
docker pull mysql:5.7.21

创建并启动容器

1
docker run --restart=always -p 3306:3306 -v /opt/mysql:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 --name mysql -d mysql:5.7.21

进入容器

1
docker exec -it mysql bash 

登录MySQL

输入以下命令

1
mysql -uroot -p

输入创建并启动容器命令设置的123456

登陆成功后修改密码

1
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';

123456就是root用户的登陆密码

允许远程连接

  • 新建用户允许远程连接
1
2
grant all on *.* to admin@'%' identified by '123456' with grant option;
flush privileges;
  • 现有用户下允许远程连接
1
2
3
use mysql;
update user set host='%' where user='root' and host='localhost';
flush privileges;
  • 查看用户
1
2
use mysql;
select host,user from user;