这是我参与「第五届青训营 」伴学笔记创作活动的第 1 天
本次项目的服务器环境配置: ubuntu 18.04 腾讯云
客户端环境配置: macos
先在服务器上安装docker
安装方法可以参考 www.cnblogs.com/myzony/p/90…
可以在shell中输入该命令检查是否成功安装: sudo docker version
1.拉取官方镜像(5.7是版本号)
docker pull mysql:5.7 # 拉取 mysql 5.7
docker pull mysql # 拉取最新版mysql镜像
-
检查是否拉取成功
sudo docker images -
一般来说数据库容器不需要建立目录映射
sudo docker run -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7- –name:容器名,此处命名为
mysql - -e:配置信息,此处配置mysql的root用户的登陆密码
- -p:端口映射,此处映射 主机3306端口 到 容器的3306端口
- -d:后台运行容器,保证在退出终端后容器继续运行
- –name:容器名,此处命名为
-
检查容器是否正确运行
docker container ls- 可以看到容器ID,容器的源镜像,启动命令,创建时间,状态,端口映射信息,容器名字
连接mysql
-
进入docker本地连接mysql客户端
sudo docker exec -it mysql bash mysql -uroot -p123456 -
然后要开启远程访问的话,需要进入docker本地客户端设置远程访问账号
$ sudo docker exec -it mysql bash
$ mysql -uroot -p123456
mysql> use mysql;
update user set host = '%' where user = 'root';
select host, user, authentication_string, plugin from mysql.user;
FLUSH PRIVILEGES;
alter user 'root'@'%' identified with mysql_native_password by '123456';
grant all privileges on *.* to root@'%' identified by "password";
password是自己mysql用的密码,不是"password" mysql使用mysql数据库中的user表来管理权限,修改user表就可以修改权限(只有root账号可以修改)
%表示任何ip都可以访问
navicat连接设置
由于使用腾讯云的主机,需要配置3306的端口策略开启外网访问,然后在navicat中开启ssl,设置ssh参数和基本参数,然后点击测试连接。一般情况就可以用了