在 mysql 中,我想在现有数据库上设置 lower_case_table_names=1,以避免跨多个平台的区分大小写问题。
A) What are the risks ?
(除了显示表问题)
B) 设置 lower_case_table_names=1 后,我是否可以跨多个平台一致地查询数据库?
select * from USERS == select * from users
;
C)触发器 + 存储过程 + 函数 + 视图 + 事件在这方面会受到怎样的影响?我知道 lower_case_table_names 仅适用于“TABLE”
名称,但触发器其他数据库对象呢?它们是否仍然不区分大小写?视图呢?
D)我是否需要重命名此配置设置之前/之后的所有表,或者这将一步完成奇迹(即 lower_case_table_names=1 中和表名)?
E) WRT 的具体步骤是什么:mysqd / my.ini
?
答案1
我们的服务器是 Windows 上的 Mysql,我们必须将其更改为 Linux。在新服务器上,我们设置小写表名称=1在我的cnf然后复制架构mysqldump 旧服务器 | mysql 新服务器(我不记得我们是否复制了mysql和信息架构模式,或者只包含我们数据的模式,您应该两种方式都尝试一下)。
一切都和以前一样。除了表之外,我们还使用视图、存储过程和存储函数(但不使用触发器)