本教程不仅适合腾讯云,全部CentOS7系统
先要确保docker安装成功
我们用的是Xshell 5工具连接远程腾讯云输入命令,打印结果如下即为安装成功。
# docker
查看全部docker仓库mysql镜像(也可以不看,没意义)
# docker search mysql
拉取mysql5.7镜像
# docker pull mysql:5.7
查看是否拉取成功
# docker images
启动mysql镜像
#docker run -p 3306:3306 --name mymysql -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=设置你的mysql密码 -d mysql:5.7
查看是否启动成功
# docker ps
此时,打开SQLyog,测试连接即可使用
难道你们以为到这里就完了???不可能,我可是走过很多弯路的,到这个步骤你们连不上会有很多原因,我一一列举。
- 密码输错了(登录时就会提醒这个别犯傻)。
- 腾讯云安全组未开放。(安全组里配置你这远程服务器开放的端口信息,记得把3306端口开放,具体教程:这里是开发教程官方文档)
- 没有设置允许远程主机连接(这个问题一般会出在MySQL5.6之前的版本上,5.7一般不会这样,为了以防万一,我发一下如何解决吧!)
允许远程连接配置(可以连接成功的就不用配置了)
-
进入MySQL镜像
# docker exec -i -t mymysql /bin/bash
-
登录MySQL
#mysql -uroot -p 你的密码
-
设置MySQL远程连接权限
# ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
-
刷新权限
# flush privileges;
如上四步之后,定可连上了。
这里讲一下配置Utf-8编码集
进入MySQL内部实例
# docker exec -i -t mymysql /bin/bash
找到 /etc/mysql/mysql.conf.d/mysql.cnf
# cd /etc/mysql/mysql.conf.d/
修改配置,增加如下节点
[client]
default-character-set=utf8
//下面这些是添加到mysqlld中的,不要删除原有内容
[mysqld]
default-storage-engine=INNODB
character-set-server=utf8
collation-server=utf8_general_ci
保存后重启docker mysql镜像
# exit //退出镜像实例内部
# docker restart mymysql //重启mymysql
# docker exec -i -t mymysql /bin/bash //再次进入实例内部
# mysql -uroot -p 你的密码 //登录mysql
查看结果
# show variables like '%character%';