• linux环境下mysql默认是区分表名大小写的


     在linux环境下,mysql默认表明是区分大小写的,我们可以查看全局变量发现:

    mysql> show variables like 'lower%';
    +------------------------+-------+
    | Variable_name          | Value |
    +------------------------+-------+
    | lower_case_file_system | OFF   |
    | lower_case_table_names | 0     |
    +------------------------+-------+
    2 rows in set (0.00 sec)

    lower_case_file_system  是一个只读参数,无法被修改,这个参数是用来告诉你在当前的系统平台下,是否对文件名大小写敏感。

    lower_case_table_names: 此参数不可以动态修改,必须重启数据库


    lower_case_table_names=0  表名存储为给定的大小和比较是区分大小写的

    lower_case_table_names = 1  表名存储在磁盘是小写的,但是比较的时候是不区分大小写 
    lower_case_table_names=2, 表名存储为给定的大小写但是比较的时候是小写的

    当在表明区分大小写的清空下我们混用大小写是会报错的,如下:

    mysql> show tables like 'black%';
    +-------------------------+
    | Tables_in_exam (black%) |
    +-------------------------+
    | black_unit              |
    | blacklist               |
    +-------------------------+
    2 rows in set (0.00 sec)
    
    mysql> select * from Blacklist;
    ERROR 1146 (42S02): Table 'exam.Blacklist' doesn't exist

    解决办法:

       如果直接修改的话是会报错的,全局只读变量不可以修改。

    mysql> set global lower_case_table_names=1;
    ERROR 1238 (HY000): Variable 'lower_case_table_names' is a read only variable

    最终解决办法:

    1.   修改/etc/my.cnf, [mysqld]下面加一行:

    lower_case_table_names=1

    如下:

     2.重启mysql服务并且查看全局变量的值

    mysql> show variables like 'lower%';
    +------------------------+-------+
    | Variable_name          | Value |
    +------------------------+-------+
    | lower_case_file_system | OFF   |
    | lower_case_table_names | 1     |
    +------------------------+-------+
    2 rows in set (0.00 sec)

    3.再次验证是否区分大小写:

    mysql> select * from BLACKLIST;
    Empty set (0.00 sec)

    至此配置成功!

  • 相关阅读:
    一些常用的正则表达式
    ASP.net国际化页面可以选择输出语言
    SQL 2008 数据表导入到 ORACLE 10g
    转载 SQL Server 2008中增强的汇总技巧
    类似于行转列的一种需求
    第一次
    很奇怪的一个SQL 语句
    MS SQL 中 FULL JOIN 的用法
    [转载]网络编辑必知常识:什么是PV、UV和PR值 zz
    寒假学习2实验一Linux系统的安装和常用命令
  • 原文地址:https://www.cnblogs.com/qlqwjy/p/9323419.html
Copyright © 2020-2023  润新知