mysql拒绝访问 Error 1044/1045 问题的解决
ERROR 1044: Access denied for user: '@127.0.0.1' to database 'mysql'
的错误。
在my.ini(linux 下是:my.cnf)的[mysqld]字段加入:
skip-grant-tables
重启mysql服务,这时的mysql不需要密码即可登录数据库
然后进入mysql
mysql>use mysql;
mysql>update user set password=password('新密码')
WHERE User='root';
mysql>flush privileges;
运行之后最后去掉my.ini中的skip-grant-tables,重启mysqld
然后再
在服务器上用mysql -h 192.168.X.X -u root -p mysql命令登录mysql数据库
192.168.X.X 为服务器真实ip地址
然后用grant命令下放权限。
GRANT ALL PRIVILEGES ON *.* TO root@localhost IDENTIFIED BY 'root-password' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON *.* TO root@127.0.0.1 IDENTIFIED BY 'root-password' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON *.* TO root@'%' IDENTIFIED BY 'root-password' WITH GRANT OPTION;
flush privileges;
说明你没有将权限下放到远端连接帐户上,由于mysql的安全性在不断的提高,权限设置默认是拒绝的,你必须自己开放权限。