一、查看磁盤空間,100%mysql
df -h
二、查找大文件,刪除之sql
du -h --max-depth=1
三、查看mysql沒法啓動,日誌中出現異常,修改/etc/my.cnf緩存
innodb_force_recovery=4
從新啓動,成功session
四、備份數據ide
date_str=`date +%Y%m%d` mkdir -p /data2/backup
cd /data2/backup
mysqldump -h localhost -uroot --password=***** -R -E -e dsideal_db > /data2/backup/dsideal_db_$date_str.sql
五、清庫從新導入優化
#建立新的
create database dsideal_db;
cd /data2/backup/
mysql -uroot -p******
use dsideal_db;
# 禁用binlog
set session sql_log_bin=0;
# 設置批量插入緩存爲256MB
SET session BULK_INSERT_BUFFER_SIZE=1024*1024*256;
# 批量插入優化
set global innodb_flush_log_at_trx_commit=0;
# 禁用外鍵
SET foreign_key_checks = 0;
# 導入數據包
source dsideal_db_20190428.sql;
# 恢復外鍵
SET foreign_key_checks = 1;
# 啓用binlog
set session sql_log_bin=1;
# 批量插入優化結束
set global innodb_flush_log_at_trx_commit=2;
# 只還原部分表的辦法idea
# 備份的指令 mysqldump -h127.0.0.1 -uroot -pDsideaL147258369 -R -E -e shl_db > /usr/local/Backup/shl.sql #從全庫備份中抽取出t表的表結構 sed -e'/./{H;$!d;}' -e 'x;/CREATE TABLE `t_kq_info`/!d;q' /usr/local/Backup/shl.sql # 抽出 grep 'INSERT INTO `t_kq_info`' /usr/local/Backup/shl.sql >> /usr/local/Backup/t_kq_info.sql