看完我的上一個博客之后,對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是無法訪問的。