推广营销软件,wordpress 访问优化,怎么在微信建立公众号,网站建设各语言优点一、MySQL单实例故障排查
故障现象 1
ERROR 2002 (HY000): Cant connect to local MySQL server through socket /data/mysql/mysql.sock (2)
问题分析#xff1a;以上情况一般都是数据库未启动或者数据库端口被防火墙拦截导致。
解决方法#xff1a;启动数据库或者防火墙…一、MySQL单实例故障排查
故障现象 1
ERROR 2002 (HY000): Cant connect to local MySQL server through socket /data/mysql/mysql.sock (2)
问题分析以上情况一般都是数据库未启动或者数据库端口被防火墙拦截导致。
解决方法启动数据库或者防火墙开放数据库监听端口
故障现象 2
ERROR 1045 (28000): Access denied for user rootlocalhost (using password: NO)
问题分析密码不正确或者没有权限访问。
解决方法 修改 my.cnf 主配置文件在[mysqld]下添加 skip-grant-tables重启数据库。最后修改密码命令如下。
mysqluse mysql;
mysql update mysql.user set authentication_stringpassword(123456) where userroot and Host localhost;
mysql flush privileges;
再删除刚刚添加的 skip-grant-tables 参数重启数据库使用新密码即可登录。
重新授权命令如下。
mysqlgrant all on . to rootmysql-server identified by 123456;
故障现象 3
在使用远程连接数据库时偶尔会发生远程连接数据库很慢的问题。
问题分析如果 MySQL 主机查询 DNS 很慢或是有很多客户端主机时会导致连接很慢. 由于开发机器是不能够连接外网的在进行 MySQL 连接时DNS 解析是不可能完成的 从而也就明白了为什么连接那么慢了。
解决方法修改 my.cnf 主配置文件在[mysqld]下添加 skip-name-resolve重启数据库可以解决。注意在以后授权里面不能再使用主机名授权。
故障现象 4
Cant open file: xxx_forums.MYI. (errno: 145)
问题分析
服务器非正常关机数据库所在空间已满或一些其它未知的原因对数据库表造 成了损坏。
可能是操作系统下直接将数据库文件拷贝移动会因为文件的属组问题而产生这个 错误。
解决方法
可以使用下面的两种方式修复数据表第一种方法仅适合独立主机用户
使用 MySQL 自带的专门用户数据表检查和修复工具 myisamchk。一般情况下只有在命令行下面才能运行 myisamchk 命令。常用的修复命令为
myisamchk -r 数据文件目录/数据表名.MYI
通过 phpMyAdmin 修复 phpMyAdmin 带有修复数据表的功能进入到某一个表中后点击“操作”在下方的“表维护”中点击“修复表”即可。 注意以上两种修复方式在执行前一定要备份数据库。
修改文件的属组仅适合独立主机用户
复制数据库文件的过程中没有将数据库文件设置为 MySQL 运行的帐号可读写一般适用于 Linux 和 FreeBSD 用户。
故障现象 5
ERROR 1129 (HY000): Host xxx.xxx.xxx.xxx is blocked because of many connection errors; unblock with mysqladmin flush-hosts
问题分析由于 mysql 数据库的参数max_connect_errors其默认值是 10。当大量(max_connect_errors)的主机去连接 MySQL总连接请求超过了 10 次新的连接就再也无法连接上 MySQL 服务。同一 个 ip 在短时间内产生太多中断的数据库连接而导致的阻塞 超过 mysql 数据库 max_connection_errors 的最大值。
解决方法 使用 mysqladmin flush-hosts 命令清除缓存命令执行方法如下
mysqladmin -uroot -p -h 192.168.241.48 flush-hosts Enter password:
修改 mysql 配置文件在[mysqld]下面添加 max_connect_errors1000然后重启 MySQL。
故障现象 6
客户端报 Too many connections。
问题分析连接数超出 Mysql 的最大连接数限制。
解决方法
在 my.cnf 配置文件里面增大连接数然后重启 MySQL 服务。
max_connections 10000
临时修改最大连接数重启后不生效。需要在 my.cnf 里面修改配置文件下次重启生效。
set GLOBAL max_connections10000; 故障现象 7
Warning: World-writable config file /etc/my.cnf is ignored ERROR! MySQL is running but PID file could not be found
问题分析MySQL 的配置文件/etc/my.cnf 权限不对。
解决方法
chmod 644 /et/my.cnf 故障现象 8
InnoDB: Error: page 14178 log sequence number 29455369832 InnoDB: is in the future! Current system log sequence number 29455369832
问题分析innodb 数据文件损坏。
解决方法修改 my.cnf 配置文件在[mysqld]下添加 innodb_force_recovery4, 启动数据库后备份数据文件然后去掉该参数利用备份文件恢复数据。
二、MySQL 主从故障排查
1故障现象 1 从库的 Slave_IO_Running 为 NO The slave I/O thread stops because master and slave have equal MySQL server ids; these ids must be different for replication to work (or the --replicate-same-server-id option must be used on slave but this does not always make sense; please check the manual before using it). 问题分析主库和从库的 server-id 值一样。
解决方法修改从库的 server-id 的值修改为和主库不一样。修改完后重启再同步即可。
2故障现象 2
从库的 Slave_IO_Running 为 NO
问题分析造成从库线程为 NO 的原因会有很多主要原因是主键冲突或者主库删除或更新数据从库找不到记录数据被修改导致。通常状态码报错有 1007、1032、1062、1452 等。
解决方法一
mysql stop slave; mysql set GLOBAL SQL_SLAVE_SKIP_COUNTER1; mysql start slave;
解决方法二
设置用户权限设置从库只读权限
set global read_onlytrue;
3故障现象 3 Error initializing relay log position: I/O error reading the header from the binary log 分析问题从库的中继日志 relay-bin 损坏。
解决方法手工修复重新找到同步的 binlog 和 pos 点然后重新同步即可。
mysqlCHANGE MASTER TO MASTER_LOG_FILEmysql-bin.xxx,MASTER_LOG_POSxxx;