如何解决MySQL问题——主机host_name被屏蔽

如何解决MySQL问题——主机host_name被屏蔽,第1张

你可以通过下述方式启动服务器来调整该值如果遇到下述错误,表示mysqld已收到来来自主机“host_name”的很多连接请求,但该主机却在中途中断。由于出现很多连接错误,主机'host_name'被屏蔽。可使用'mysqladmin flush-hosts'解除屏蔽。允许的中断连接请求的数目由max_connect_errors系统变量的值决定。当超出max_connect_errors规定的连接请求时,mysqld将认为某处出错(例如,某人正试图插入),并屏蔽主机的进一步连接请求,直至执行了mysqladmin flush-hosts命令,或发出了FLUSH HOSTS语句为止。在默认情况下,mysqld会在10次连接错误后屏蔽主机。你可以通过下述方式启动服务器来调整该值:shell>mysqld_safe --max_connect_errors=10000 &如果在给定主机上遇到该错误,首先应核实该主机的TCP/IP连接是否正确。

使用“mysql -uroot -proot”命令可以连接到本地的mysql服务。

使用“use mysql”命令,选择要使用的数据库,修改远程连接的基本信息,保存在mysql数据库中,因此使用mysql数据库。

使用“GRANT ALL PRIVILEGES ON . TO ‘root’@’%’ IDENTIFIED BY ‘root’ WITH GRANT OPTION”命令可以更改远程连接的设置。

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION1

使用“flush privileges”命令刷新刚才修改的权限,使其生效。

使用“select host,user from user”查看修改是否成功。

1、开启远程访问: 

use mysql 

update user set host = “%” where user = “root” 

flush privileges

2、 添加用户 

use mysql 

insert into user(host, user, password) values(“%”, “root”, password(“yourpassword”))

grant all privileges on . to ‘root’@’%’ with grant option #赋予任何主机访问数据库权限 

flush privileges

3、关闭远程访问: 

use mysql 

update user set host = “localhost” where user = “root” and host= “%” 

flush privileges

4、查看用户权限: 

use information_schema 

select * from user_privileges

5、查看当前mysql用户: 

use mysql 

select user, host from user

6、更新用户: 

update mysql.user set password=password(‘新密码’) where User=”phplamp” and Host=”localhost” 

flush privileges

7、删除用户: 

DELETE FROM user WHERE User=”phplamp” and Host=”localhost” 

flush privileges


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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存