创建mysql用户
adduser mysql
gpasswd -a mysql docker (将mysql用户加入docker用户组)
设置mysql用户密码:
passwd mysql
下载mysql的docker镜像文件
docker pull mysql:5.7.20
如果不加版本号会下载最新版本
创建配置目录(mysql用户)
su mysql (切换到mysql用户)
cd (进入mysql家目录)
mkdir conf (创建mysql配置文件目录)
mkdir data (创建mysql数据文件目录)
创建my.cnf文件
vi /home/mysql/conf/my.cnf
[client] default-character-set=utf8mb4 [mysql] default-character-set=utf8mb4 [mysqld] skip-host-cache skip-name-resolve datadir = /home/mysql/data !includedir /etc/mysql/conf.d/ skip-external-locking key_buffer_size = 16M max_allowed_packet = 100M 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 wait_timeout=2880000 max_connections=10000 lower_case_table_names=1 default-time_zone = '+8:00' #此为北京时 sql_mode='' log-bin = mysql-bin server-id = 14 character-set-client-handshake=FALSE character-set-server=utf8mb4 collation-server=utf8mb4_unicode_ci init_connect='SET NAMES utf8mb4' [mysqldump] quick max_allowed_packet = 160M [myisamchk] key_buffer_size = 20M sort_buffer_size = 20M read_buffer = 2M write_buffer = 2M
保存
启动mysql(mysql 用户执行)
docker run –name mysql -p 13306:3306 --privileged=true -v /home/mysql/data:/home/mysql/data -v /home/mysql/conf/my.cnf:/etc/mysql/my.cnf -v /etc/localtime:/etc/localtime -e MYSQL_ROOT_PASSWORD=qwer1234 -d mysql:5.7.20
其中MYSQL_ROOT_PASSWORD 是设置数据库的密码