环境:Centos7 + mysql5.6版本
在以mysql -u root 命令登录到mysql,使用create database XX命令新建数据库时提示
ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'XX',经分析是由于使用mysql -u root 方式登录,实际上是登录到一个空用户(''@'localhost'),不是root用户,解决方法如下:
1、关闭mysql
service mysqld stop
2、屏蔽权限
mysqld_safe --skip-grant-table
待屏幕出现Starting demo from.....
3、新开一终端
mysql -u root mysql
mysql>update user set password=password('newpwd') where user='root';
mysql>flush privileges;
mysql>\q
4、关闭数据库重启,再进入就可以新建数据库了。
mysql -u root mysql -p
输入密码:
即进入到
mysql>