我们有一个MySQL 5.7服务器,需要在非严格模式下使用,因为一些遗留数据库需要它。然而,在我们最新的应用程序中,我们希望数据库执行严格性(特别是NO_ZERO_DATE)。是否有一种在数据库级别覆盖服务器级配置的方法?
发布于 2017-02-14 17:02:27
您可以按会话更改SQL模式:
SET SESSION sql_mode = 'modes';根据文档的说法:
设置会话变量只影响当前客户端。
这可能是一个解决你的问题的办法。我认为没有通过数据库设置SQL模式的直接方法。
另请注意:
重要 SQL模式和用户定义的分区。在创建数据并将数据插入分区表后更改服务器SQL模式可能会导致此类表的行为发生重大变化,而可能导致数据丢失或损坏。强烈建议您在创建了使用用户定义的分区的表之后,永远不要更改SQL模式。
也许更安全的方法是使用两个MySQL服务器实例。
https://stackoverflow.com/questions/42231896
复制相似问题