1.官网pull mysql镜像
我需要下载的是mysql5.7,所以我在terminal中输入docker pull mysql:5.7.35,不知道自己要下载什么版本的可以去官网 hub.docker.com/ 查询。
2.创建docker容器
可以使用docker images命令查看镜像id。
然后输入命令docker run -p 3306:3306 --name mysql -v E:/mysql_data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d 1d7aba917169
-p 3306:3306 将宿主机的3306端口映射到容器的3306端口。
--name mysql:容器的名称叫mysql,可以自己取。
-v:容器中的数据挂载到宿主机目录。
-e:设置root用户的登录密码为123456。
-d:后台启动,后面是刚刚下载的image id。
启动后使用docker ps命令查看:
3.进入容器内部修改mysql访问权限
-
输入
docker exec -it mysql bash进入容器内部,这里mysql是容器名称,根据自己的来。
-
输入
mysql -u root -p命令进入mysql -
输入
select user, authentication_string, host from user;查看权限,可以看到root的访问权限只有localhost。 -
输入命令
grant all privileges on *.* to 'root'@'%' identified by '123456';修改权限,再输入flush privileges;
此时再输入select user, authentication_string, host from user;查看,显示: