linux下使用docker安装mysql
准备:
- centOs7 linux系统
1、安装docker
- yum install docker
//安装最新版本的docker
- systemctl start docker
//启动docker
//可能会报错:Job for docker.service failed because the control process exited with error code. See “systemctl status docker.service” and “journalctl -xe” for details.
//原因是:此linux的内核中的SELinux不支持 overlay2 graph driver ,解决方法有两个,要么启动一个新内核,要么就在docker里禁用selinux,–selinux-enabled=false
//这里选择禁用selinux
//vi /etc/sysconfig/docker
//将’–selinux-enabled 改为 '–selinux-enabled=false
- yum -y remove docker
//删除docker
2、安装mysql
- docker pull mysql
//拉取mysql镜像
- docker image
//查看docker本地库
4. docker run --name mysql -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 -d mysql
//创建并启动一个MySQL容器
-name :容器的名称,这里取名为mysql
-e 配置账户密码,这里为root账户,密码为root
-p 端口映射,本机的3306端口映射容器的3306端口
-d 启动容器后输出容器的id
最后的mysql表示镜像名字为mysql
- docker ps
//列出容器列表
5.测试连接数据库
1.firewall-cmd --zone=public --add-port=3306/tcp --permanent //开放端口
2.firewall-cmd --reload //重新载入
3.使用nvaicat连接测试
其他:远程连接mysql报10060错误
docker exec -it mysql /usr/bin/bash //进入mysql容器进行配置等操作
mysql -u root -p //登录
GRANT ALL PRIVILEGES ON . TO ‘root’@’%'WITH GRANT OPTION; //任何远程主机都可以访问数据库
FLUSH PRIVILEGES; //需要输入次命令使修改生效