1、首先查找mysql镜像,使用命令:docker search mysql当然也可以去docker hub官网查看需要的docker镜像的tag。
2、下载镜像,使用命令:docker pull mysql如果不指定镜像的版本则下载的是最新版本的。例如,指定tag,下载mysql5.7版本的 docker pull mysql:5.7.23我们也可以指定其他仓库的镜像,例如:docker pull centos/mysql-57-centos7
3、docker镜像下载完成后,我们通过镜像创建容器并运行,命令如下:docker run -p 3306:3306 --name mym烤恤鹇灭ysql -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql-p 3306:3306:将容器的3306端口映射到本机的3306端口。-v -v $PWD/conf:/etc/mysql/conf.d:将本机当前目录下的conf/my.cnf挂载到容器的/etc/mysql/my.cnf。-v $PWD/logs:/logs:将本机当前目录下的logs目录挂载到容器的 /logs。-v $PWD/data:/var/lib/mysql:将主机当前目录下的data目录挂载到容器的 /var/lib/mysql 。-e MYSQL_ROOT_PASSWORD=123456:初始化 root 用户的密码。
4、接下来我们进入到容器,设置允许远程访问。docker exec -it mymysql /bin/bash这里的mymysql可以替换为容器的ID,我们使用docker ps命令查看CONTAINER ID,也可以使用步骤3启动后返回的长ID。
5、进入容器后,我们使用命令旅邯佤践进入mysql:mysql -uroot -p输入密码:123456授权:mysql>GR帆歌达缒ANTALLON*.*TO'root'@'%';刷新权限:mysql> flush privileges;更新加密规则:ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;更新root用户密码:ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';刷新权限:flush privileges;
6、接下来我们使用navicat连接mysql,输入主机名、端口号、用户名和密码后,点击连接测试,提示“连接成功”,则说明mysql的安装和设置完成了。