docker启动mysql 8.1

1、目标

用docker 启动 mysql 8.1,并指定数据目录。

2、前言

由于centos7太老,直接是无法安装mysql8.1的,又不推荐改系统配置,那只能用docker启动一个mysql8.1了。

3、下载docker 8.1镜像

自己想个办法弄个docker 8.1镜像。

4、新建目录和配置

bash 复制代码
mkdir -p /data/mysql/conf
cd /data/mysql/conf
touch my.cnf
bash 复制代码
[mysql]
#设置mysql客户端默认字符集
default-character-set=utf8mb4
[mysqld]
# 数据库忽略大小写 8.0加了启动报错
lower_case_table_names = 1
#设置3306端口
port=3306
#允许最大连接数
max_connections=1000
#允许连接失败的次数。
max_connect_errors=10
#最大允许包
max_allowed_packet=20M
#服务端使用的字符集默认为utf8mb4
character-set-server=utf8mb4
collation_server = utf8mb4_general_ci
#创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# mysql8中"mysql_native_password"插件认证不让用了,改成默认的caching_sha2_password
# mysql8.4 中已经没有default_authentication_plugin变量了,要注释掉
default_authentication_plugin=caching_sha2_password

5、启动mysql8.1

bash 复制代码
docker run -d -p 3306:3306 \
--restart=always \
--privileged=true \
-v /data/mysql/log:/var/log/mysql \
-v /data/mysql/data:/var/lib/mysql \
-v /data/mysql/conf/my.cnf:/etc/mysql/my.cnf \
-v /data/mysql/mysql-files:/var/lib/mysql-files \
-v /etc/timezone:/etc/timezone:ro \
-v /etc/localtime:/etc/localtime:ro \
-e MYSQL_ROOT_PASSWORD=Laoxiao666Kahn \
-e TZ=Asia/Shanghai \
--name mysql mysql:8.1

6、查看是否启动起来了

bash 复制代码
docker ps

7、登录mysql

bash 复制代码
docker exec -it mysql /bin/bash
root@a18abfe70e23:/# mysql -u root -p
mysql> use mysql;
mysql> select Host, User, plugin, authentication_string from user;

---听说有打赏功能---谢谢---2024年12月14日22:35:02

相关推荐
chian-ocean1 小时前
CANN 生态进阶:利用 `profiling-tools` 优化模型性能
数据库·mysql
人鱼传说1 小时前
docker desktop是一个好东西
运维·docker·容器
小章UPUP3 小时前
Kubernetes (K8s) 与 Podman 的比较
容器·kubernetes·podman
忆~遂愿3 小时前
CANN metadef 核心解析:计算图原型定义、算子元数据抽象与异构系统互操作机制
docker·容器
那个村的李富贵3 小时前
解锁CANN仓库核心能力:50行代码搭建国产化AIGC图片风格迁移神器
mysql·信息可视化·aigc·cann
说实话起个名字真难啊3 小时前
用docker来安装openclaw
docker·ai·容器
恬静的小魔龙4 小时前
【群晖Nas】群晖Nas中实现SVN Server功能、Docker/ContainerManager等
docker·svn·容器
Zfox_5 小时前
CANN Catlass 算子模板库深度解析:高性能 GEMM 融合计算、Cube Unit Tiling 机制与编程范式实践
docker·云原生·容器·eureka
春日见5 小时前
如何创建一个PR
运维·开发语言·windows·git·docker·容器
DARLING Zero two♡5 小时前
告别 Docker 命令行!Portainer+cpolar 让容器管理从局域网走向公网
运维·docker·容器