Docker部署mysql并提供客户端访问
【摘要】 在服务器使用docker镜像创建容器来部署数据库,如mysql,这种方式是超级常见的,学习时间久了,有点过程会容易遗忘,特此写下博客记录,方便以后使用。 1.CentOS 7 安装docker环境https://www.cnblogs.com/mazhilin/p/11553510.html 2.docker pull最新mysql镜像获取mysql镜像docker search mysql...
在服务器使用docker镜像创建容器来部署数据库,如mysql,这种方式是超级常见的,学习时间久了,有点过程会容易遗忘,特此写下博客记录,方便以后使用。
1.CentOS 7 安装docker环境
https://www.cnblogs.com/mazhilin/p/11553510.html
2.docker pull最新mysql镜像
获取mysql镜像
docker search mysql //查询mysql镜像
docker pull mysql //拉取最新的mysql镜像
docker images //查看是否获取mysql镜像
3.基于mysql镜像创建并运行容器
根据服务器可用端口号与容器端口号映射关系,考虑是否需要挂载mysql容器目录到服务器目录,是否需要将容器创建到指定网络,设置root账户的密码(后面连接mysql需要使用)等,创建自己的mysql容器。
有端口映射 + 网络 + 挂载等:
docker run --name image_mysql --privileged=true -p 8099:3306 --network datasetbuilder -v /home/data/mysql/datadir:/var/lib/mysql -v /home/data/mysql/conf.d:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456 -d mysql:latest
有端口映射 + 挂载:
docker run --name image_mysql --privileged=true -p 8099:3306 -v /home/data/mysql/datadir:/var/lib/mysql -v /home/data/mysql/conf.d:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456 -d mysql:latest
参数说明:
–name:指定容器名
–p:映射宿主主机端口
-v:挂载宿主目录到容器目录
-e:设置环境变量,此处指定root密码
-d:后台运行容器
–privileged=true 防止挂载数据卷出现权限问题
docker ps -a //查看容器是否运行成功
4.进入容器设置客户端访问权限
(1)进入mysql容器
docker exec -it 容器名/bin/bash //进入容器
如:
docker exec -it image_mysql /bin/bash //进入容器
如果想退出容器:输入exit,或者按Ctr+D。
(2)连接mysql
mysql -u root -p
输入root账户的密码,即可连接成功
(3)修改root 可以通过任何客户端连接
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
(4)退出mysql连接
输入exit,或者按 Ctr+D
mysql>exit
5.宿主机或远程客户端工具访问
mysql -h 127.0.0.1 -P 3306 -u root -p
然后可以使用navicat等mysql客户端操作该数据库。
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)