当时安装mysql时新建的非root用户,今天登录后发现使用如下命令新建root用户总是如题报错
CREATE USER 'root'@'localhost' IDENTIFIED BY '1234.asd';
查找多个资料,最后stackoverflow有提到,应该使用如下语法
INSERT INTO mysql.user (user, host, password)
VALUES ('root', 'localhost', PASSWORD('你的密码'));
试过,果然不报1396的错误,但是仍旧提示ERROR 1364 (HY000): Field 'ssl_cipher' doesn't have a default value
这个问题解决如下:
安装目录找到并打开my.ini,查找 sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION" 修改为 sql-mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION" 重启MYSQL 至此以上问题全部解决