CentOs7 使用docker安装Mysql 5.7
文章目录
前置条件
*centos7 且内核版本高于3.10, 可通过以下命令查看内核版本
uname -r
一、安装Docker【如果没装过】
安装一些系统必要的工具和更新软件源(生产环境慎重)
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
更新 yum 缓存:
sudo yum makecache fast
安装 Docker-ce:
sudo yum -y install docker-ce
启动 Docker 后台服务:
sudo systemctl start docker
二、Docker安装Mysql
查找MySQL镜像:
docker search mysql
拉起MySQL镜像(:5.7 表示5.7版本)
docker pull mysql:5.7
运行MySQL容器
docker run -d -p 3306:3306 --privileged=true -v /docker/mysql/conf/my.cnf:/etc/my.cnf -v /docker/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 --name mysql mysql:5.7 --character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci
参数说明:
-
run run 是运行一个容器
-
-d 表示后台运行
-
-p 表示容器内部端口和服务器端口映射关联
-
–privileged=true 设值MySQL 的root用户权限, 否则外部不能使用root用户登陆
-
-v /docker/mysql/conf/my.cnf:/etc/my.cnf 将服务器中的my.cnf配置映射到docker中的/docker/mysql/conf/my.cnf配置
-
-v /docker/mysql/data:/var/lib/mysql 同上,映射数据库的数据目录, 避免以后docker删除重新运行MySQL容器时数据丢失
-
-e MYSQL_ROOT_PASSWORD=123456 设置MySQL数据库root用户的密码
-
–name mysql 设值容器名称为mysql
-
mysql:5.7 表示从docker镜像mysql:5.7中启动一个容器
-
–character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci 设值数据库默认编码
新建MySQL用户新建mysql用户
先进入容器
docker exec -it mysql bash
执行MySQL命令, 输入root密码, 连接MySQL
mysql -uroot -p
输入密码后, 执行下面命令创建新用户 (用户名: test , 密码: test123)
三、Navicat连接
填写信息,如果不知道服务器ip
- 数据库ip地址可以通过运营商控制台查看
- 见注意事项2
四、 注意事项
1. 阿里云3306端口开启
2. CentOS7 查看外网ip
本机
curl ifconfig.me
相关命令
Curl 纯文本格式输出:
curl icanhazip.com
curl ifconfig.me
curl curlmyip.com
curl ip.appspot.com
curl ipinfo.io/ip
curl ipecho.net/plain
curl www.trackip.net/i
curl JSON格式输出:
curl ipinfo.io/json
curl ifconfig.me/all.json
curl www.trackip.net/ip?json (有点丑陋)
curl XML格式输出:
curl ifconfig.me/all.xml
curl 得到所有IP细节 (挖掘机)
curl ifconfig.me/all