mysql 5.7 创建用户报错ERROR 1364 (HY000): Field 'ssl_cipher' doesn't have a default value

如:

INSERT INTO user 
          (host, user, authentication_string, 
           select_priv, insert_priv, update_priv) 
           VALUES ('localhost', 'test1', 
        '123456', 'Y', 'Y', 'Y');

  报错:ERROR 1364 (HY000): Field 'ssl_cipher' doesn't have a default value

出现错误的原因是mysql默认配置严格模式,该模式禁止通过insert的方式直接修改mysql库中的user表进行添加新用户。 
解决方法是修改my.ini(Windows系统)或my.conf(Linux系统)配置文件,以linux系统为例将:

sql-mode=STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

 

修改成:

sql-mode=NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

  

然后重启mysql服务

service mysql restart

  



原文地址:https://www.cnblogs.com/saryli/p/11887382.html