下載文檔請看:https://hub.docker.com/r/mysql/mysql-server
一.下載鏡像
執行命令: docker pull mysql/mysql-server:5.7
查看命令:docker images
運行MySQL后台運行並映射到本地端口命令:docker run -d -p 3306:3306 --name mysql mysql/mysql-server:5.7
查看運行容器:docker ps
監視容器的輸出:docker logs mysql
連接到mysql server命令:docker exec -it mysql mysql -uroot -p
密碼為:docker logs mysql 里面輸出password后面的內容
重置mysql服務的密碼:ALTER USER 'root'@'localhost' IDENTIFIED BY 'password'
創建用戶並且賦權限: create user '用戶名'@'%' identified by '密碼';
grant all privileges on *.* to '用戶名'@'%' with grant option;
三.設置字符集編碼格式
進入 容器: docker exec -it mysql bash
cd /etc
安裝vim編輯器 :yum install vim
進入mysql配置文件:vim my.cnf
編寫后的內容
[client] #password = your_password port = 3306 socket = /data0/data/mysql.sock default-character-set = utf8mb4 [mysql] default-character-set = utf8mb4 [mysqld] character-set-client-handshake = FALSE character-set-server = utf8mb4 collation-server = utf8mb4_general_ci init_connect = 'SET NAMES utf8mb4' port = 3306 socket = /data0/data/mysql.sock skip-external-locking key_buffer_size = 16M max_allowed_packet = 1M table_open_cache = 64 sort_buffer_size = 512K net_buffer_length = 8K read_buffer_size = 256K read_rnd_buffer_size = 512K myisam_sort_buffer_size = 8M datadir = /data0/data [mysqldump] quick max_allowed_packet = 16M [mysql] no-auto-rehash [myisamchk] key_buffer_size = 20M sort_buffer_size = 20M read_buffer = 2M write_buffer = 2M [mysqlhotcopy] interactive-timeout
也可以通過運行容器時來配置參數:
命令如下
docker run -d -p 3306:3306 -e MYSQL_USER="用戶名" -e MYSQL_PASSWORD="密碼" -e MYSQL_ROOT_PASSWORD="密碼" --name mysql mysql/mysql-server:5.7 --character-set-server=utf8 --collation-server=utf8_general_ci
docker安裝mysql文檔: https://dev.mysql.com/doc/refman/5.7/en/docker-mysql-getting-started.html
個人建議 直接通過運行容器來配置參數