ECS云服务器 CentOS7 Docker中MySQL容器设置表名忽略大小 详细操作

2021/9/10 19:08:20

本文主要是介绍ECS云服务器 CentOS7 Docker中MySQL容器设置表名忽略大小 详细操作,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

系列文章目录

Linux系统CentOS 7.6 Docker 安装 MySQL8.0 详细步骤

文章目录

  • 系列文章目录
  • 前言
  • 一、回顾下Docker安装MySQL目录挂载和启动
    • 1、创建数据挂载文件夹
    • 2、启动mysql容器,通过挂载配置和数据的方式运行容器
  • 二、解决Docker中MySQL容器,设置表名忽略大小问题
    • 1.可以使用Navicat工具查询是否 忽略表名大小写状况
    • 2.Docker修改配置文件

前言

第一次遇到这个问题,折腾了很久,最后一步步解决,所以记录一下,希望能帮助有需要的小伙伴。


一、回顾下Docker安装MySQL目录挂载和启动

1、创建数据挂载文件夹

mkdir -p /usr/local/mysql/data
mkdir -p /usr/local/mysql/mysql-files
mkdir -p /usr/local/mysql/conf
mkdir -p /usr/local/mysql/logs

2、启动mysql容器,通过挂载配置和数据的方式运行容器

docker run -p 3306:3306 --name mysql \ 
-v /usr/local/mysql/conf.d:/etc/mysql/conf.d \ 
-v /usr/local/mysql/logs:/var/log/mysql \ 
-v /usr/local/mysql/data:/var/lib/mysql \ 
-e MYSQL_ROOT_PASSWORD=123456 \ 
-d mysql:8.0

查看是否安装成功

docker ps -a

二、解决Docker中MySQL容器,设置表名忽略大小问题

1.可以使用Navicat工具查询是否 忽略表名大小写状况

lower_case_table_names=0 区分表名大小写

lower_case_table_names=1 忽略表名大小写

代码如下:

# 查看数据库版本号
select version();

# 查看是否设置了表名忽略大小写
show global variables like '%lower_case%';

在这里插入图片描述

2.Docker修改配置文件

1、找到要修改的镜像

docker ps -a

2、进入要修改的容器

docker exec -it 容器ID或名称 /bin/bash 

3、进入要修改的文件目录

cd /etc/mysql

4、安装vim

apt-get update
apt-get install vim

5、修改配置文件,在[mysqld]节点下,加入一行:lower_case_table_names=1

vi my.cnf

在这里插入图片描述
在这里插入图片描述
然后按ESC键,按:键,输入wq 保存退出

6、如果要退出bash有2种操作:
1)Ctrl + d 退出并停止容器;
2)Ctrl + p + q 退出并在后台运行容器;

7、 然后把/usr/local/mysql/data整个删除,最后重启容器

docker restart 容器ID或名称

8、检查是否设置成功

show global variables like '%lower_case%';

在这里插入图片描述

恭喜你修改成功了!



这篇关于ECS云服务器 CentOS7 Docker中MySQL容器设置表名忽略大小 详细操作的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程