Centos7 docker安裝MySQL

Docker MySQL

安裝 MySQL 鏡像

# docker pull mysql:5.7

運行 mysql

docker run  --restart=always --privileged=true --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root  -d mysql:5.7 --lower_case_table_names=1 

參數說明:

--restart=always 跟隨docker啓動
--privileged=true 容器root用戶享有主機root用戶權限
-v 映射主機路徑到容器
-e MYSQL_ROOT_PASSWORD=root 設置root用戶密碼
-d 後臺啓動
--lower_case_table_names=1 設置表名參數名等忽略大小寫

進入mysql命令行

docker exec -it mysql bash //mysql是啓動的服務name

登錄

mysql -uroot -proot

授權遠程登錄

use mysql;
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
flush privileges;

修改mysqld.cnf

#如果沒有vi命令
apt-get update

#更新源
apt-get install vim

查看mysql字符集

SHOW VARIABLES LIKE 'character_set_%';
SHOW VARIABLES LIKE 'collation_%';

設置外部訪問編碼

SET NAMES 'utf8';

修改mysql配置文件修改utf-8編碼

mkdir docker
cp /etc/mysql/mysql.conf.d/mysqld.cnf /docker/mysqld.cnf

修改配置文件mysqld.cnf內容

[mysql]
default-character-set = utf8


[mysql_safe]
default-character-set = utf8


[client]
default-character-set = utf8


[mysqld]
pid-file      = /var/run/mysqld/mysqld.pid
socket        = /var/run/mysqld/mysqld.sock
symbolic-links=0
init_connect  = 'SET NAMES utf8'
character-set-server = utf8
collation-server = utf8_unicode_ci

將容器的配置文件覆蓋回去

cp /docker/mysqld.cnf /etc/mysql/mysql.conf.d/mysqld.cnf

重啓容器

docker stop container_id
docker start container_id
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章