使用Docker部署mysql8

1、拉取mysql8的镜像:

[root@i-zgn6som8 ~]# docker pull mysql:8.0

2、创建配置和数据文件夹并修改权限:

mkdir -p /data/mysql8/conf
mkdir -p /data/mysql8/data

chmod -R 755 /data/mysql8/

3、配置一个自定义的配置文件my.cnf:

vim /data/mysql8/conf/my.cnf

文件内容如下:

[client]
default-character-set=utf8mb4

[mysql]
default-character-set=utf8mb4

[mysqld]
pid-file        = /var/run/mysqld/mysqld.pid
socket          = /var/run/mysqld/mysqld.sock
datadir         = /var/lib/mysql
character_set_server = utf8mb4
collation_server = utf8mb4_bin
secure-file-priv= NULL
symbolic-links=0
transaction_isolation=READ-COMMITTED
innodb_log_file_size=256M
max_allowed_packet=34M
max_connections=1000
max_user_connections=500
max_connect_errors=100
default-time_zone='+8:00'

4、通过以下命令,直接运行容器:

docker run -d -p 23306:3306 \
-v /data/mysql8/conf/:/etc/mysql/conf.d \
-v /data/mysql8/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD='Jgq20230724!@#' \
--restart=always \
--name=mysql8 \
mysql:8.0

5、此时就可以直接连接了:

1690168572158267.png

补充一:之所以挂载到conf.d下面,是因为新版的mysql建议自定义的配置,挂载到 /etc/mysql/conf.d 目录下,以 .cnf 结尾即可:

[root@i-jiguiquan ~]# docker exec -it mysql8 /bin/bash

root@decdf9fa3b4d:/# cat /etc/mysql/my.cnf

[mysqld]
pid-file        = /var/run/mysqld/mysqld.pid
socket          = /var/run/mysqld/mysqld.sock
datadir         = /var/lib/mysql
secure-file-priv= NULL

# Custom config should go here
!includedir /etc/mysql/conf.d/

jiguiquan@163.com

文章作者信息...

留下你的评论

*评论支持代码高亮<pre class="prettyprint linenums">代码</pre>

相关推荐