09. centos使用docker方式安装mysql
一、创建宿主机物理路径
新建/mydata/mysql/data、log和conf三个文件夹
mkdir -p /mnt/mysql/log
mkdir -p /mnt/mysql/data
mkdir -p /mnt/mysql/config
或者
mkdir /mnt/mysql/{log,data,config}
二、直接执行下面这个命令,即可创建成功mysql服务
docker run -p 3306:3306 --name mysql --restart=always \
-v /mnt/mysql/log
:/var/log/mysql \
-v /mnt/mysql/data
:/var/lib/mysql \
-v /mnt/mysql/config
:/etc/mysql/conf.d \
-e MYSQL_ROOT_PASSWORD=admin123 \
-d mysql:5.7
注1:
- -e MYSQL_ROOT_PASSWORD=admin123 其中【admin123】就是默认用户root的密码
- -v 是文件挂载,冒号之前是Linux宿主机的物理位置,后面的则是映射docker容器的位置
- -e 是设置密码
- -d 是后台使用 mysql:5.7 启动新的容器
注2:使用挂载文件位置修改mysql的配置
编辑 /mnt/mysql/config 目录,新建 my.cnf 文件,那么在 mysql 容器的 /etc/mysql 下即可看到 my.cnf 文件。
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
init_connect='SET collation_connection=utf8_unicode_ci'
init_connect='SET NAMES utf8'
#character-set-server=utf8
#collection-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve
三、开放 3306 端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload
四、docker常用命令
- 查看日志
docker logs mysql(容器名称或者id)
- 容器自动启动
docker run --restart=always 容器id或名称
docker update --restart=always 容器id或名称
- 进入mysql容器
docker exec -it mysql /bin/bash