如何解决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连接是否正确。

1、可能是/opt/mysql-master/data/数据目录mysql用户没有权限(修改数据目录的权限)解决方法 :给予权限,执行 "chown -R mysql.mysql /opt/mysql-master/data" 然后重新启动mysqld2、可能进程里已经存在mysql进程解决方法:用命令“ps -ef|grep mysqld”查看是否有mysqld进程,如果有使用“kill -9 进程号”杀死,然后重新启动mysqld!3、可能是第二次在机器上安装mysql,有残余数据影响了服务的启动。解决方法:去mysql的二进制日志目录看看,如果存在mysql-binlog.index,就赶快把它删除掉吧4、mysql在启动时没有指定配置文件时会使用/etc/my.cnf配置文件,请打开这个文件查看在[mysqld]下有没有指定数据目录(datadir)。解决方法:请在[mysqld]下设置这一行:datadir = /opt/mysql-master/data5、skip-federated字段问题解决方法:检查一下/etc/my.cnf文件中有没有没被注释掉的skip-federated字段,如果有就立即注释掉吧。6、错误日志目录不存在解决方法:使用“chown” “chmod”命令赋予mysql所有者及权限7、selinux惹的祸,如果是centos系统,默认会开启selinux解决方法:先临时改为警告模式:[root@www php]# setenforce 0然后打开/etc/sysconfig/selinux,把SELINUX=enforcing改为SELINUX=disabled8、可以试着把mysql.cnf默认文件开启,排查是不是配置文件的错误。常见配置错误有:查看配置文件/etc/my.cnf里有没有innodb_buffer_pool_size这个参数innodb_buffer_pool_size:主要作用是缓存innodb表的索引,数据,插入数据时的缓冲;默认值:128M;专用mysql服务器设置此值的大小: 系统内存的70%-80%最佳。如果你的系统内存不大,查看这个参数,把它的值设置小一点吧温馨提示:记得开启mysql错误日志,方便自己排错。vim /etc/my.cnf 各位可以根据自己的my.cnf文件编辑[mysql_safe]log-error = /data/mysql-master/logs/error.log

mysql有提供ignore关键字~

使用

insert ignore into ....

这样,当违背了唯一约束的时候~就会直接跳过,不会报错。


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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存