CentOS7利用docker安裝MySQL5.7
前提條件
centos7 且內(nèi)核版本高于3.10, 可通過以下命令查看內(nèi)核版本
uname -r
利用yum 安裝docker
安裝一些必要的系統(tǒng)工具:
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 后臺服務(wù):
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
參數(shù)說明:
- run run 是運行一個容器
- -d 表示后臺運行
- -p 表示容器內(nèi)部端口和服務(wù)器端口映射關(guān)聯(lián)
- --privileged=true 設(shè)值MySQL 的root用戶權(quán)限, 否則外部不能使用root用戶登陸
- -v /docker/mysql/conf/my.cnf:/etc/my.cnf 將服務(wù)器中的my.cnf配置映射到docker中的/docker/mysql/conf/my.cnf配置
- -v /docker/mysql/data:/var/lib/mysql 同上,映射數(shù)據(jù)庫的數(shù)據(jù)目錄, 避免以后docker刪除重新運行MySQL容器時數(shù)據(jù)丟失
- -e MYSQL_ROOT_PASSWORD=123456 設(shè)置MySQL數(shù)據(jù)庫root用戶的密碼
- --name mysql 設(shè)值容器名稱為mysql
- mysql:5.7 表示從docker鏡像mysql:5.7中啟動一個容器
- --character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci 設(shè)值數(shù)據(jù)庫默認(rèn)編碼
新建MySQL用戶
先進(jìn)入容器
docker exec -it mysql bash
執(zhí)行MySQL命令, 輸入root密碼, 連接MySQL
mysql -uroot -p
輸入密碼后, 執(zhí)行下面命令創(chuàng)建新用戶 (用戶名: test , 密碼: test123)
GRANT ALL PRIVILEGES ON *.* TO 'test'@'%' IDENTIFIED BY 'test123' WITH GRANT OPTION;
阿里云的話遠(yuǎn)程訪問記得防火墻開 3306 端口 3≈佟:蜗尽A薅埂!
關(guān)注公眾號:java寶典