新手问题,root用户创建数据库为什么不行?
输入creat database books; 出现error 1064 <42000>;you have an error in your sql syntax;check……
引用you have an error in your sql syntax;check……
没有权限执行的问题,管理员权限root用户就可以了。
mysql -u root
登录之后再执行,就OK了。
原来是因为mysql数据库的user表里,存在用户名为空的账户即匿名账户,导致登录的时候是虽然用的是root,但实际是匿名登录的,通过错误提示里的可以看出来。
解决办法:
1.关闭mysql
# service mysqld stop
2.屏蔽权限
# mysqld_safe –skip-grant-table
屏幕出现: Starting demo from …..
3.新开起一个终端输入
# mysql -u root mysql
mysql> delete from user where USER=”;
mysql> FLUSH PRIVILEGES;//记得要这句话,否则如果关闭先前的终端,又会出现原来的错误
mysql> \q
这样就ok了