使用MySQL 5.5.27,在my.cnf中我有:
[mysql]
sql_mode=ANSI
启动mysql控制台时,我得到:
unknown variable 'sql-mode=TRADITIONAL'
MySQL文档Server SQL Modes显示了这个选项,那么为什么它不工作呢?
(如果有帮助,我是OSX Lion)
另外,这里是一个粘贴列表,显示了另一个人尝试过的东西,没有解决方案。
sql-mode
应该在[mysqld]
区,而不是在[mysql]
区;如果您将sql-mode=ANSI
移动到[mysqld]
部分,它应该工作。
我很确定它不工作的原因是因为它是mysqld的参数,而不是客户端。我想到了另一种方法,你可以这样做。编辑您的用户my.cnf i.e. ~/.my.cnf
,如下所示:
[client]
init-command="set sql_mode='TRADITIONAL'"
在配置文件中,您应该使用sql-mode
的名称来代替(使用横线,而不是下划线)
http://dev.mysql.com/doc/refman/5.5/en/server-options.html option_mysqld_sql-mode
正如@cogsmos指出的,你应该把它放在[mysqld]
section
在Mysql和mariadb中,您都可以尝试将/etc/Mysql/my.cnf文件放在section中:
[mysqld]
sql_mode=''