TiDB 2 修改参数lower_case_table_names

TiDB运行环境:
ERROR   OGG-00768  The Value '2' of system variable lower_case_table_names is not supported.


解释:

 tidb的参数 lower_case_table_names=2  默认值是2,
可以修改为1.
修改为1 行为和2是一样的,仅是为了兼容OGG.

# vim tidb-docker-compose/config/tidb.toml
# Set system variable 'lower_case_table_names'
lower-case-table-names = 1

在开发环境使用的是docker方式
# docker-compose stop
# docker-compose up -d

--登录查看:

mysql> select tidb_version()\G
*************************** 1. row ***************************
tidb_version(): Release Version: v3.0.0-beta-8-g63936cc
Git Commit Hash: 63936cc1fa8dbfea793b90a0cf1d78312354a141
Git Branch: master
UTC Build Time: 2019-01-21 11:59:56
GoVersion: go version go1.11.2 linux/amd64
Race Enabled: false
TiKV Min Version: 2.1.0-alpha.1-ff3dd160846b7d1aed9079c389fc188f7f5ea13e
Check Table Before Drop: false
1 row in set (0.01 sec)


mysql> show variables like 'lower_case_table_names%';
+------------------------+-------+
| Variable_name          | Value |
+------------------------+-------+
| lower_case_table_names | 1     |
+------------------------+-------+
1 row in set (0.01 sec)


 -- MySQL中的参数:
    lower_case_table_names: 此参数不可以动态修改,必须重启数据库
    lower_case_table_names = 1  表名存储在磁盘是小写的,但是比较的时候是不区分大小写
    lower_case_table_names=0  表名存储为给定的大小和比较是区分大小写的 
    lower_case_table_names=2, 表名存储为给定的大小写但是比较的时候是小写的
 -- TiDB中的参数:

lower_case_table_names 的默认值不同:
TiDB 中该值默认为 2,并且目前 TiDB 只支持设置该值为 2
MySQL 中默认设置:
Linux 系统中该值为 0
Windows 系统中该值为 1
macOS 系统中该值为 2


-- 参考:
https://pingcap.com/docs-cn/sql/mysql-compatibility/

https://dev.mysql.com/doc/refman/5.7/en/identifier-case-sensitivity.html

 

你可能感兴趣的:(TiDB)