欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

MySQL異常宕機無法啟動的處理過程

 更新時間:2024年08月15日 09:23:25   作者:hh真是個慢性子  
MySQL宕機是指MySQL數(shù)據庫服務突然停止運行,通??赡苁怯捎谟布收稀④浖e誤、資源耗盡、網絡中斷、配置問題或是惡意攻擊等導致,當MySQL發(fā)生宕機時,系統(tǒng)可能無法提供數(shù)據訪問,本文給大家介紹了MySQL異常宕機無法啟動的處理過程,需要的朋友可以參考下

環(huán)境

  • oom異常關閉導致 MySQL5.7 啟動失敗。

同事導入數(shù)據時異常關閉,應該是數(shù)據量太大導致mysql崩潰,嘗試重啟失敗了提示如下:

Database was not shutdown normally!
2021-02-26T21:33:29.691452+08:00 0 [Note] InnoDB: Starting crash recovery.
2021-02-26T21:33:30.287496+08:00 0 [Note] InnoDB: Starting an apply batch of log records to the database...
InnoDB: Progress in percent: 0 1 2 3 4 5 6 7 8 9 10 11 12  #進度到這里自動退出了

配置文件修改參數(shù) innodb_force_recovery = 1 ---->將0 修改為1 ---->沒有設置的可以在mysqld下添加參數(shù)

注解:

innodb_force_recovery可以是設置1-6,數(shù)字大的包含數(shù)字小的功能,所以我們要從1開始設置來嘗試啟動mysql
innodb_force_recovery=0,關閉恢復功能 正常啟動
innodb_force_recovery=1,即使發(fā)現(xiàn)了損壞頁面也繼續(xù)讓服務器繼續(xù)運行,這個選項對于備份或者轉存當前數(shù)據尤為有用
innodb_force_recovery=2,阻止恢復主線程的運行,如果清除操作會導致服務器掛掉
innodb_force_recovery=3,恢復后不回滾事務
innodb_force_recovery=4,如果插入到緩沖區(qū)的合并操作會導致系統(tǒng)崩潰,將不會被執(zhí)行
innodb_force_recovery=5,啟動數(shù)據庫時,忽略撤消日志
innodb_force_recovery=6,啟動數(shù)據庫時,忽略與恢復相關的前滾日志

配置恢復

配置完成后重洗啟動數(shù)據庫

#先打開日志
[root@db02 ~]# tail -f /mydata/3306/log/mysql-error.log

#啟動了很久顯示失敗
[root@db02 ~]# /etc/init.d/mysqld restart 
 ERROR! MySQL server PID file could not be found!
Starting MySQL.................................................................................................................................... ERROR! The server quit without updating PID file (/mydata/3306/data/db02.pid).

#查看日志顯示已經恢復到百分之百了
2021-02-26T21:40:27.983238+08:00 0 [Note] InnoDB: Starting an apply batch of log records to the database...
InnoDB: Progress in percent: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 2021-02-26T21:41:26.220425+08:00 0 [ERROR] InnoDB: Waited for 10 seconds for 256 pending reads
67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99


#再往下翻翻發(fā)現(xiàn)錯誤點----->是因為啟用了恢復時啟用了 innodb_force_recovery 參數(shù)
2021-02-26T21:42:11.303902+08:00 0 [ERROR] InnoDB: innodb_force_recovery is on. We do not allow database modifications by the user. Shut down mysqld and edit my.cnf to set innodb_force_recovery=0
mysqld: Operation not allowed when innodb_forced_recovery > 0.
2021-02-26T21:42:11.306255+08:00 0 [ERROR] Aborting

關閉此參數(shù)

#關閉innodb_force_recovery 參數(shù)
[root@db02 ~]# vim /etc/my.cnf
innodb_force_recovery = 0

啟動數(shù)據庫

[root@db02 ~]# /etc/init.d/mysqld start
Starting MySQL.. SUCCESS!

注:
到這里數(shù)據庫就起來了,如果配置為1無法啟動數(shù)據庫可以在往后注意嘗試,直到可以啟動為止。

檢查是否有損壞的表

配置跳過表和網絡啟動

mysqld_safe --skip-grant-tables --skip-networking &

檢查是否啟動

ps -ef|grep mysql

打開日志觀察是否有損壞的表

tail -f /mydata/3306/log/err.log

檢查損壞的表并嘗試修復

mysqlcheck -A   --auto-repair  -uroot -p -A

如損壞的表過多則重新初始化數(shù)據庫,初始化前先備份

沒有損壞的表可以繼續(xù)使用當前實例運行。

壞表處理

備份數(shù)據庫

mysqldump -uroot -p -A  -R -E --triggers  >/tmp/dump.sql

創(chuàng)建新的初始化目錄

mkdir /mydata/3306/data_new

授權

chown -R mysql:mysql  /mydata/3306/data_new

修改my.cnf

vim /etc/my.cnf
datadir=/mydata/3306/data_new  # 改為新的
# skip_grant_tables  # 注釋此選項
# innodb_force_recovery  # 注釋此選項

初始化mysql

mysqld  --initialize-insecure   --basedir=/mysql/mysql57  --datadir=/mydata/3306/data_new

關閉舊 mysql

pkill mysql

啟動mysql

/etc/init.d/mysqld start  # 這個文件里要改成新的數(shù)據目錄名去啟動

注:如果報socket錯誤可以做個軟連接或者改配置文件即可。

連接mysql

mysql -uroot -p 

將備份導入到新庫

source /tmp/dump.sql
或者
mysql < /tmp/dump.sql

檢查數(shù)據

此時已經恢復完成,可以將MySQL停止,將舊數(shù)據目錄和新數(shù)據目錄重命名回去,修改配置文件,以恢復原狀。

優(yōu)化系統(tǒng)和 MySQL 配置優(yōu)化

系統(tǒng)配置優(yōu)化

cat >/etc/sysctl.conf<<'EOF'
vm.swappiness=0          # 減少 swap 分區(qū)使用
vm.overcommit_memory = 1 # 允許所有內存分配
EOF

# 生效
sysctl -p

MySQL 配置優(yōu)化

# 配置文件永久修改
vim /etc/my.cnf
innodb_buffer_pool_size = 2G  # 將緩沖池配置為系統(tǒng)當前可用內存的 3/4

# 命令行臨時修改
set global innodb_buffer_pool_size=(select 2*1024*1024*1024);  

以上就是MySQL異常宕機無法啟動的處理過程的詳細內容,更多關于MySQL宕機無法啟動的資料請關注腳本之家其它相關文章!

相關文章

最新評論