数据库常见问题
一、修复受损表
1.https://www.cnblogs.com/aaronguo/p/10561252.html
1、登录到数据库
2、use abc
3、check table demo;
4、一般会列出错误,那么就repair table demo;
5、一般结果就会显示OK,如果不放心,可以再次check table demo;
2.
找下mysql的安装目录下的bin/myisamchk
myisamchk -c -r ../data/xxxxx/xxxx.MYI
二.查找慢查sql
bin/mysql --defaults-extra-file=etc/user.root.cnf -e 'show full processlist' | grep -v Sleep | sort -n -k6
查找出耗时最长的sql,再使用explain执行看是否慢查
三.查看死锁
4.1 show engine innodb status\G
4.2 select * from information_schema.innodb_trx;
select * from information_schema.innodb_lock_waits;
select * from information_schema.innodb_locks;
四.
4.1 mysqlbinlog分析binlog日志
/usr/local/mysql/bin/mysqlbinlog --no-defaults -v -v --base64-output=DECODE-ROWS mysql-bin.000010 | grep -A '10' 794
4.2 从库跳过报错
stop slave ;set global sql_slave_skip_counter=1;start slave;
五、设置非严格模式
set global SQL_MODE="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION";
浙公网安备 33010602011771号