1. 环境准备
1. centos7
2. 安装包下载
1. 百度网盘下载
链接:https://pan.baidu.com/s/1AfRUkiXD9Oee1hA5az9SXg
提取码:gs7b
2. 版本说明
此安装包为docker mysql8 镜像安装包,版本为mysql-8.0.31,之前使用的mysql-8.0.27 有安全漏洞,被客户扫出来了 后来升级到最新的版本。上网查mysql-8.0.28的版本后修复了漏洞。
3. 创建安装目录
1. 创建mysql安装目录
mkdir -p /usr/local/software/mysql8/{data,conf,init}
目录说明:
mysql安装路径为:/usr/local/software/mysql8
data: mysql8 实际安装路径
conf 为配置文件存放路径
init: 为初始化脚本路径,docker安装mysql8 数据库在创建的时候会执行/docker-entrypoint-initdb.d下的所有后缀为.sql 的sql脚本文件
4. 写入配置文件
cat >>/usr/local/software/mysql8/conf/my.cnf << EOF [mysql] [mysqld] lower_case_table_names = 1 default-time_zone = '+8:00' default_authentication_plugin = mysql_native_password sql_mode = STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION max_connections = 2000 EOF
参数说明:
lower_case_table_names = 1 数据库忽略大小写
default-time_zone = '+8:00' 设置数据库时区为正8区
default_authentication_plugin = mysql_native_password mysql8 换了密码加密方式,要让数据库使用旧的密码加密方式
5. 初始化sql脚本
如果有数据库初始的脚本 请放到/usr/local/software/mysql8/init 目录下
6. 导入mysql8 docker 镜像
在mysql-8.tar.gz包同一个路径下执行
docker load -i mysql-8.tar.gz
7. 运行mysql8容器
docker run -p 3306:3306 --name mysql8 --privileged=true --restart=always -v /usr/local/software/mysql8/conf/my.cnf:/etc/mysql/conf.d/my.cnf -v /usr/local/software/mysql8/data:/var/lib/mysql -v /usr/local/software/mysql8/init:/docker-entrypoint-initdb.d -e MYSQL_ROOT_PASSWORD=root -e LC_ALL=zh_CN.utf8 -e LANG=zh_CN.utf8 -e LANGUAGE=zh_CN.utf8 -d mysql:8
标签:mysql8,安装,usr,mysql,docker,local,software From: https://www.cnblogs.com/sunxun001/p/16952632.html