MySQL 出错案例


1.mysql配置文件修sql-mode或sql_mode为NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
请在mysql配置文件修改sql_mode或sql-mode
解决方法
mysql中修改my.cnf
找到sql_mode
修改值为 NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
如果没有该字段
在[mysqld]标签里新增
sql_mode = NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
重启mysql
原因Mysql还有一个模式控制这个 就是NO_AUTO_CREATE_USER模式
以前给mysql服务器添加用户:
grant CREATE, DROP,INSERT, SELECT, DELETE, UPDATE,ALTER on xxx.* to xxx;
grant CREATE, DROP,INSERT, SELECT, DELETE, UPDATE,ALTER on xxx.* to xxx@localhost;
set password for xxx@'%' = password(xxx);
set password for xxx@'localhost' = password(xxx);
flush privileges;
Mysql服务器抱错
Can't find any matching row in the user table
Mysql还有一个模式控制这个 就是NO_AUTO_CREATE_USER模式
在mysql客户端中运行
mysql> set sql_mode = 'no_auto_create_user';
不能成功 原因是没有提供用户密码
解决的办法是添加一个indentified 子句
grant CREATE, DROP,INSERT, SELECT, DELETE, UPDATE,ALTER on xxx.* to xxx identified by 'xxx';
空密码是不认的
grant CREATE, DROP,INSERT, SELECT, DELETE, UPDATE,ALTER on xxx.* to xxx identified by ''; 就不行。

MySQL 常见问题和mysqlFaq相关