首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >mysql linux环境下表名区分大小写问题

mysql linux环境下表名区分大小写问题

作者头像
山行AI
发布于 2019-09-03 10:20:13
发布于 2019-09-03 10:20:13
2.7K00
代码可运行
举报
文章被收录于专栏:山行AI山行AI
运行总次数:0
代码可运行

在linux环境下表名是区分大小写的

问题

执行SHOW VARIABLES LIKE '%lowercasetable_names%' 输出结果:

其中 0:区分大小写,1:不区分大小写

解决办法

在mysql的配置文件中添加 lowercasetable_names=1

实际解决方式

  • 先查找mysql使用的配置文件
  • 添加配置
  • 重启mysql
  • 查看是否生效

查找mysql配置文件

locate my.cnf 没有找到
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@iZblz0hZ mysql]# locate my.cnf
-bash: locate: command not found

正常情况使用locate my.cnf命令可以列出所有的my.cnf文件

ps命令查看是否使用了指定目录的my.cnf 没有找到
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@iZbts0ohz0hZ ~]# ps aux|grep mysql|grep 'my.conf'
查看mysql默认读取my.cnf的目录
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@iZbpohz0hZ ~]# mysql --help|grep 'my.cnf'
                      order of preference, my.cnf, $MYSQL_TCP_PORT,
/etc/my.cnf /etc/mysql/my.cnf /usr/local/mysql/etc/my.cnf ~/.my.cnf

去对应的目录中查找时,没有找到。于是,在/etc目录下新建my.cnf文件,文件中的内容为:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[mysqld]
character_set_server=utf8
init_connect='SET NAMES utf8'
basedir=/work1/soft/mysql
datadir=/work1/soft/mysql/data
socket=/work1/soft/mysql/mysql.sock
#设置忽略大小写(简单来说就是sql语句是否严格),默认库名表名保存为小写, 不区分大小写
lower_case_table_names=1
# 开启ip绑定
#bind-address = 0.0.0.0
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/work1/soft/mysql/data/mysqld.pid
#指定客户端连接mysql时的socket通信文件路径
[client]
socket=/work1/soft/mysql/mysql.sock
default-character-set=utf8
重启mysql

执行service mysql restart

查看是否生效

SHOW VARIABLES LIKE '%lowercasetable_names%';

可以看到修改成功。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-08-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 开发架构二三事 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
MySQL如何设置不区分大小写
本文将深入探讨MySQL数据库中如何设置不区分大小写,并针对不同操作系统以及使用Navicat等工具的情况进行详细介绍。通过了解如何设置不区分大小写,您可以更好地管理MySQL数据库,提高工作效率。
默 语
2024/11/20
1.2K0
linux下MySQL表名忽略大小写设置
最近公司项目的MySQL数据库要迁移到linux下,部署时日志总是显示报找不到一个表,用MYSQL查看明明有这个表。后来经百度,原来LINUX下的MYSQL默认是区分表名大小写的。
流柯
2018/08/30
3.9K0
CentOS7下MySQL5.7安装与配置(YUM)
改变默认安装的mysql版本。比如要安装5.6版本,将5.7源的enabled=1改成enabled=0。然后再将5.6源的enabled=0改成enabled=1即可。改完之后的效果如下所示:
lyb-geek
2022/03/10
2.1K0
CentOS7下MySQL5.7安装与配置(YUM)
CentOS Linux 离线安装mysql5.7.39
首先,需要从 MySQL 官方网站或其他可靠来源下载 MySQL 5.7 的安装包。确保选择与你的 CentOS 系统架构(如 x86_64)对应的版本。
友儿
2024/03/08
8020
CentOS Linux 离线安装mysql5.7.39
Centos7安装mysql+keepalived 高可用环境[通俗易懂]
链接:https://downloads.mysql.com/archives/community/
全栈程序员站长
2022/09/06
6460
Centos7安装mysql+keepalived 高可用环境[通俗易懂]
MySQL配置文件配置
虚拟机环境:VirtualBox 6.0.24 操作系统:Oracle Linux Server release 6.5 x86_64 MySQL版本:5.7.33
全栈程序员站长
2022/08/22
6.2K0
设置MySQL数据库不区分大小写
我们大家可能都碰到过这种情况:在Linux下,MySQL的表名区分大小写,而在Windows下是不区分,从Windows下导出的数据脚本中使用的是小写,而Hibernate生成的SQL中表名是大写的,所以查不出数据。如下,我的一个Windows下的项目移植到Linux环境中就因为MySQL严格区分大小写问题报错:
浩Coding
2019/07/03
17.3K0
linux centos7下源码 tar安装mysql5.7.22或mysql5.7.20 图文详解
现在用tar包安装5.7.22和5.7.20一样的 5.7.20之后的和之前的版本还是有点不一样的
全栈程序员站长
2022/07/18
5300
linux centos7下源码 tar安装mysql5.7.22或mysql5.7.20 图文详解
MySQL查询区分大小写
晓松
2024/12/23
5990
MySQL查询区分大小写
ERROR 2002 (HY000): Can't connect to local MySQL server through socket
    在安装好了MySQL之后,使用了新的配置文件后,MySQL服务器可以成功启动,但在登陆的时候出现了ERROR 2002 (HY000): Can't connect to local MySQL server through socket,即无法通过socket连接到mysql服务器,同时提供了socket文件的位置。下面是这个问题的描述与解决办法。
Leshami
2018/08/13
1.3K0
CentOS7下安装MySQL教程(rpm方式)
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.22-1.el7.x86_64.rpm-bundle.tar
吾非同
2021/08/05
1.3K0
Docker实践经验(四)docker 上部署 mysql8 主从复制
需要一个 MySQL8 版本的 MySQL,因为我个人没有用过 mysql5,不知道二者是否会有一些特性上的偏差。
看、未来
2022/05/06
6160
Docker实践经验(四)docker 上部署 mysql8 主从复制
MySQL的一点学习笔记
最近在看《MySQL技术内幕之innodb存储引擎》这本上,上面还是写了很多有意义有价值的内容的,这里讲学习笔记贴上来,学习笔记中包含很多点,以后再系统的总结一把,今天先把所有的点罗列一些,大家可以看看,希望有所帮助吧。
AsiaYe
2019/11/06
3610
Linux 上手动编译安装 MySQL8.0
三、去官网下载 Yum 资源包,下载地址为:https://dev.mysql.com/downloads/repo/yum/
Sindsun
2019/12/11
1.4K0
Linux 上手动编译安装 MySQL8.0
Linux下Mysql安装配置
安装包 这里以centos 6.8 为例。下载Bundle包。然后解压:
用户2929716
2018/08/23
1.6K0
Linux下Mysql安装配置
Linux下安装mysql-8.0.21
下面记录了我在Linux(Centos 7)环境下安装Mysql的完整过程,实操记录,绝非水文,如有错误或遗漏,欢迎指正。
全栈程序员站长
2022/08/25
5910
Linux下安装mysql-8.0.21
【实操记录】MySQL二进制安装包部署
截至2023年11月2日,MySQL社区版最新版本是8.0.35,本文详细描述了采用二进制安装的各个步骤,具有较强的参考意义,基本可作为标准步骤实施。
雪人
2024/07/12
3250
关于MySQL库表名大小写问题
一般在数据库使用规范中,我们都会看到这么一条:库名及表名一律使用小写英文。你有没有思考过,为什么推荐使用小写呢?库表名是否应该区分大小写呢?带着这些疑问,我们一起来看下本篇文章。
MySQL技术
2021/07/05
8.1K0
MySQL数据库实现主从复制
我们用的在这篇文章《在CentOS上使用Nginx和Tomcat搭建高可用高并发网站》使用的只有一个MySQL数据库。
夜雨飘零
2020/05/06
2.9K0
细说MySQL区分字母大小写
在Linux系统上使用MySQL,MySQL是区分字母大小写的,例如建A表时表名是大写的A,修改A表时脚本里写的a,就会报错表a不存在。在MySQL中,数据库对应数据目录中的目录,数据库中的每个表至少对应数据库目录中的一个文件或多个文件,所以,是否区分大小写是其所在的操作系统决定的。在大多数基于Unix的系统中,MySQL是区分大小写的;而在Windows系统中,MySQL是不区分大小写的。 操作系统中提供了lower_case_table_names参数用于修改这种区分大小写的策略。默认情况下,Linux
JavaQ
2018/04/04
3.1K0
相关推荐
MySQL如何设置不区分大小写
更多 >
LV.0
这个人很懒,什么都没有留下~
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档