phpmyadmin 管理mysql时 #1130错误

phpmyadmin 管理mysql时 #1130错误,第1张

找到文件my.ini(mysql路径下),找到[mysqld],添加skip-grant-tables

[mysqld]

......

skip-grant-tables

重启mysql,以root用户登录(不需要输入密码)

在sql标签下,运行以下sql语句

flush privileges

grant all privileges on *.* to root@'localhost' identified by "你的密码"

到my.ini文件下注释掉之前添加的skip-grant-tables (一定要记得这步)

重启mysql,就可以了

一开始以为是防火墙的问题,但关掉防火墙,问题依旧。

琢磨了很久,得出如下的解决方法:

1,改表法。可能是帐号不允许从远程登陆,只能在localhost。

只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%"

mysql -u root -pvmwaremysql>use mysqlmysql>update user set host = '%' where user = 'root'mysql>select host, user from user

2,授权法。

例如,希望myuser使用mypassword从任何主机连接到mysql服务器:

GRANT ALL PRIVILEGES ON *.* TO IDENTIFIED BY 'mypassword' WITH GRANT OPTION

允许用户myuser从ip为192.168.1.3的主机连接到mysql服务器,并使用mypassword作为密码:

GRANT ALL PRIVILEGES ON *.* TO IDENTIFIED BY 'mypassword' WITH GRANT OPTION

你的MYSQL帐号不允许远程访问,因此才会报错.

MYSQL中的每一个用户,都有访问的权限.这权限不仅包括对数据库的 *** 作权限,还包括远程连接权限.

MYSQL安装之后默认创建的ROOT用户,访问权限为localhost.也就是只能在本地访问.要想让它可以远程访问,可以修改成 % (任意主机)或你的PHPMYADMIN所在的服务器的IP地址.

修改的方法很简单.用ROOT进入系统,运行以下命令:

use mysql ---打开MYSQL这个库

update user set host="%" where user="root"

这样就OK了


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/8577358.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-18
下一篇 2023-04-18

发表评论

登录后才能评论

评论列表(0条)

保存