docker启动mysql,存在端口映射和数据卷
将docker启动,执行以下命令:
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/conf.d \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:tag
参数说明:
-p 3306:3306:将容器的 3306 端口映射到主机的 3306 端口(也就是将装有docker的虚拟机的端口和docker启动的虚拟机的端口进行映射)
-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 用户的密码
-d 表示后台运行
创建mysql的配置文件:my.cnf
执行命令:
vim /mydata/mysql/conf/my.cnf
将以下内容进行写入即可:
[client]
default_character_set=utf8
[mysql]
default-character-set=utf8
[mysqld]
collation_server = utf8_general_ci
character_set_server = utf8
skip-character-set-client-handshake
skip-name-resolve