看完我的上一个博客之后,对centos系统应该有一定的了解,话不多说,接下来我们来在docker容器中部署mysql。
1.下载mysql镜像,因为本人用的5.7版本,你也可以下载最新版,都是可以的
docker pull mysql:5.7
2.下载完之后,创建实例并启动,指令解释为:
docker run -p 3306:3306 --name mysql \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:5.7
其中:
-p 3306:3306:将容器的3306端口映射到主机的3306端口
-v /mydata/mysql/conf:/etc/mysql:将配置文件夹挂在到主机
-v /mydata/mysql/log:/var/log/mysql:将日志文件夹挂载到主机
-v /mydata/mysql/data:/var/lib/mysql/:将配置文件夹挂载到主机
-e MYSQL_ROOT_PASSWORD=root:初始化root用户的密码
3.mysql配置文件的修改(推荐),此操作是让mysql跳过转码,让mysql连接更快速,mysql配置文件修改.
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve
如果阿里云服务器没有配置安全组,就无法远程连接mysql或者redis等等,所以记录一下我之前踩过的坑。
4.打开阿里云服务器控制台。
5.管理实例中,点击安全组按钮。
6.添加安全组规则
7.添加内容如下,其中端口范围是服务器暴露的端口是什么,优先级1为最高,授权对象为能够访问的ip地址,配置完成之后电脑即可访问。
注意:在访问的时候,ip地址需要填写公网ip地址,私网IP是无法访问的。