10

使用 MySQL 5.5.27,在 my.cnf 我有:

[mysql]
sql_mode=ANSI

启动 mysql 控制台后,我得到:

unknown variable 'sql-mode=TRADITIONAL'

MySQL doc Server SQL Modes显示了该选项,那么为什么它不起作用?

(如果有帮助,我在 OSX Lion 上)

此外,这是一个粘贴箱,显示了另一个人尝试过的东西,但没有解决方案

4

3 回答 3

23

sql-mode应该在[mysqld]节中,而不是在[mysql]节中。如果您移至sql-mode=ANSI[mysqld]部分,它应该可以工作。

于 2015-07-27T15:49:41.457 回答
9

我很确定它不起作用的原因是因为它是 mysqld 而不是客户端的参数。我想出了一种替代方法,您可以这样做。将您的用户 my.cnf 编辑i.e. ~/.my.cnf为如下所示:

[client]
init-command="set sql_mode='TRADITIONAL'"
于 2013-05-10T04:45:20.653 回答
2

在配置文件中,您应该改用sql-mode名称(使用破折号,而不是下划线)

http://dev.mysql.com/doc/refman/5.5/en/server-options.html#option_mysqld_sql-mode

正如@cogsmos 指出的那样,你应该把它放在[mysqld]部分

于 2013-05-10T04:32:01.970 回答