第一步:拉取mysql镜像
语法:docker pull mysql:tag
docker pull mysql:5.7.35
第二步:启动mysql镜像,创建一个mysql容器
docker run -d --name mysql -p 3307:3306 -e MYSQL_ROOT_PASSWORD=123456 1d7aba917169
参数解释:
-d 表示在让容器后台运行
--name 给容器起一个名字
-p 3307:3306 把宿主机的3307端口(port)映射到Mysql容器的3306端口
-e MySQL 容器的环境配置
MYSQL_ROOT_PASSWORD=123456 指定mysql根用户的密码,用户名默认为root,注意如果没有指定密码,会启动失败。
第三步:查看容器,操作容器
进入容器bash交互界面
[root@localhost ~]# docker exec -it mysql bash
登录mysql,用户名root,密码123456
root@85881ce9cf5f:/# mysql -uroot -p
修改root远程连接权限
切换数据库
mysql> use mysql
展示数据库中的表
mysql> show tables;
修改root远程连接权限
mysql>update user set host=‘%‘ where user=‘root‘ and host=‘localhost‘;
给root用户授权
mysql>GRANT ALL PRIVILEGES ON *.* TO ‘root‘@‘%‘ IDENTIFIED BY ‘123456‘ WITHTH GRANT OPTION;
退出
mysql>exit;
使用Navicat连接,这里使用的是Linux系统的ip和端口,不是容器的ip和端口
这样就可以使用Navicat进行数据库操作了!
原文:https://www.cnblogs.com/diamondhehua/p/15260708.html