伺服器停電mysql無法啟動(伺服器停電mysql無法啟動)

本文目錄一覽:

停電導致docker中mysql容器無法啟動,關鍵數據還沒有備份,求問各位大神?

修復 mysql 資料庫電源故障造成的數據損壞在使用 mysql 資料庫時,我們都遇到過電源故障造成的資料庫損壞,我們都知道,電源故障或異常關機是 mysql 資料庫錯誤最常見的原因,如何恢復 mysql 資料庫是每個人都頭疼的問題。有什麼辦法可以幫你恢復破損的 mysql 資料庫嗎?當用戶由於電源故障而丟失或損壞 mysql 資料庫時,如果他們可以進入 mysql 軟體但是被錯誤提示,用戶可以使用「系統維護」作為「資料庫壓縮修復」 ,壓縮資料庫(一些軟體在「系統設置」、「系統維護」、「資料庫備份和恢復」) ,這種方法只適用於資料庫故障修復的一小部分,功能不高。在 web 上 mysql 資料庫恢復有兩種推薦的方法,一種是使用 sql 語句,如 mysql 的 check table 和 repair table (與 php 的最佳組合) ,另一種是使用 mysql 提供的多個 myisamchk、 isamchk 數據檢測和恢復工具(與 php 的最佳組合)。許多用戶認為,這兩種方法都很複雜,不適合大多數用戶。此外,這兩種方法都不能有效地恢復 mysql 資料庫,還可能導致資料庫被進一步破壞,造成不可挽回的損失。由於上述原因,不推薦使用兩種 mysql 資料庫恢復方法。資料庫以下列方式損壞: 1。嚴重腐敗2。輕微腐敗3。有些表已損壞,有些表的記錄已部分損壞

怎麼解決mysql服務無法啟動的問題

找到mysql安裝目錄,將其配置文件my.default.ini改名為my.ini,並且將my.ini移至bin目錄下。

啟動命令行,將目錄切換到mysql安裝目錄的bin目錄下。

接下來,在命令行執行命令:mysqld –initialize –user=mysql –console

注意,上一個步驟會獲得一個臨時密碼,需要記錄,之後會用到。

接下來在控制台以命令行輸入: mysqld –install,進行安裝服務操作。

之後,在任務管理器找到「服務」,啟動其中的MYSQL服務即可。

之後,輸入命令行mysql -uroot -p,利用之前的臨時密碼輸入即可登錄資料庫成功。

修改臨時密碼,設置密碼:mysqladmin -u USER -p password PASSWORD,注意USER和PASSWORD為自己定義的數值。

伺服器重啟MYSQL啟動不了怎麼辦

一、無法訪問系統資源

MySQL 不能訪問啟動需要的資源是造成而 MySQL 無法啟動的一個常見原因,如:文件,埠等。由於 linux 中用於啟動 mysqld 進程的 mysql 用戶通常是不能登陸的,可以使用類似下面的命令檢查文件的訪問許可權。

sudo -u mysql touch /var/lib/mysql/b

找出問題後,修改對應文件或目錄的許可權或屬主後通常可以解決問題。但有時 mysql 用戶有訪問文件和目錄的許可權,但仍然會被拒絕訪問,例如下面這個例子:

mysql system sudo -u mysql touch /home/mysql/data/a

mysql create table t1 (

id int primary key,n varchar(10

) data directory

ERROR 1030 (HY000): Got error 168 from storage engine

測試說明 mysql 用戶有這個目錄的訪問許可權,但創建文件還是失敗,這種情況讓很多人困惑,這個時候通常是 mysqld 進程的訪問被 linux 的 selinux 或 apparmor 給阻止了,大家可以看到創建的表不是在 mysql 的默認目錄下面,因此 selinux 或 apparmor 的 policy 裡面沒有包含這個目錄的訪問許可權,此時只要對應的修改 policy 就行了,當然把 selinux 或 apparmor 停了也行。

有時雖然對系統資源有訪問的許可權,但系統資源已經被佔用:

mysqld –no-defaults –console –user mysql

2020-11-03T03:36:07.519419Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 8.0.19) starting as process 21171

2020-11-03T03:36:07.740347Z 1 [ERROR] [MY-012574] [InnoDB] Unable to lock ./ibdata1 error: 11

這個故障產生的原因是另外一個 mysqld 進程已經啟動並佔用了對應的文件。

二、參數設置錯誤

參數設置錯誤造成 MySQL 無法啟動的原因也非常常見,此時先要檢查 MySQL 啟動時會調用的參數,下面的命令可以查詢 MySQL 啟動時調用參數文件的順序:

$ mysqld –verbose –help | grep “Default options ” -A 1

Default options are read from the following files in the given order:

/etc/my.cnf /etc/mysql/my.cnf ~/.my.cnf

知道了 MySQL 參數文件的調用順序,我們就可以檢查對應的參數文件,找出其中的錯誤,如果覺得參數文件的可讀性不強,可以使用下面的命令顯示 mysqld 程序將要調用的參數:

$ mysqld –print-defaults

/usr/sbin/mysqld would have been started with the following arguments:

……

注意這個命令顯示完參數後就退出,不會真正運行 mysqld。這個命令和 my_print_defaults mysqld 完全是等價的,只不過後者的顯示方式是一行一個參數。

然後開始對可疑的參數進行調試,我個人喜歡加的參數和順序如下:

1. 在 mysqld 後加上第一個參數 –no-defaults ,這個參數的作用是通知 mysqld 在啟動的時候不要讀任何參數文件;

2. 第二個參數是 –console,這個參數會把錯誤信息輸出到屏幕上,這個參數帶來的一個弊端是所有的信息都輸出到屏幕上,讓屏幕顯得比較亂,但對於我們調試卻是很方便的;

3. 第三個參數是 –log-error-verbosity=3,這個參數會顯示詳細的日誌;

4. 然後再在後面加上有把握的參數,可以一次只加一個參數,然後啟動 mysqld,採用排除法逐步找出錯誤的參數。

mysql 無法啟動。電腦突然停電,重新開機後,mysql啟動不起來。提示「mysqld.exe 已停止工作”

進控制面板,管理工具,服務,找到MySQL ,右擊重啟動此服務,或者暫停啟動服務

停電導致docker中mysql容器無法啟動,關鍵數據還沒有備份,沒有映射目錄,求問各位大神?

轉到控制面板,管理工具,服務,查找 mysql,右鍵單擊重新啟動服務,或暫停啟動服務

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/300382.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-29 12:51
下一篇 2024-12-29 12:51

相關推薦

  • 如何修改mysql的埠號

    本文將介紹如何修改mysql的埠號,方便開發者根據實際需求配置對應埠號。 一、為什麼需要修改mysql埠號 默認情況下,mysql使用的埠號是3306。在某些情況下,我們需…

    編程 2025-04-29
  • 伺服器安裝Python的完整指南

    本文將為您提供伺服器安裝Python的完整指南。無論您是一位新手還是經驗豐富的開發者,您都可以通過本文輕鬆地完成Python的安裝過程。以下是本文的具體內容: 一、下載Python…

    編程 2025-04-29
  • STUN 伺服器

    STUN 伺服器是一個網路伺服器,可以協助網路設備(例如 VoIP 設備)解決 NAT 穿透、防火牆等問題,使得設備可以正常地進行數據傳輸。本文將從多個方面對 STUN 伺服器做詳…

    編程 2025-04-29
  • Python操作MySQL

    本文將從以下幾個方面對Python操作MySQL進行詳細闡述: 一、連接MySQL資料庫 在使用Python操作MySQL之前,我們需要先連接MySQL資料庫。在Python中,我…

    編程 2025-04-29
  • 解決docker-compose 容器時間和伺服器時間不同步問題

    docker-compose是一種工具,能夠讓您使用YAML文件來定義和運行多個容器。然而,有時候容器的時間與伺服器時間不同步,導致一些不必要的錯誤和麻煩。以下是解決方法的詳細介紹…

    編程 2025-04-29
  • MySQL遞歸函數的用法

    本文將從多個方面對MySQL遞歸函數的用法做詳細的闡述,包括函數的定義、使用方法、示例及注意事項。 一、遞歸函數的定義 遞歸函數是指在函數內部調用自身的函數。MySQL提供了CRE…

    編程 2025-04-29
  • MySQL bigint與long的區別

    本文將從數據類型定義、存儲空間、數據範圍、計算效率、應用場景五個方面詳細闡述MySQL bigint與long的區別。 一、數據類型定義 bigint在MySQL中是一種有符號的整…

    編程 2025-04-28
  • MySQL左連接索引不生效問題解決

    在MySQL資料庫中,經常會使用左連接查詢操作,但是左連接查詢中索引不生效的情況也比較常見。本文將從多個方面探討MySQL左連接索引不生效問題,並給出相應的解決方法。 一、索引的作…

    編程 2025-04-28
  • 如何選擇MySQL伺服器文件許可權

    MySQL是一種流行的關係型資料庫管理系統。在安裝MySQL時,選擇正確的文件許可權是保證安全和性能的重要步驟。以下是一些指導您選擇正確許可權的建議。 一、許可權選擇 MySQL伺服器需…

    編程 2025-04-27
  • CentOS 7在線安裝MySQL 8

    在本文中,我們將介紹如何在CentOS 7操作系統中在線安裝MySQL 8。我們會從安裝環境的準備開始,到安裝MySQL 8的過程進行詳細的闡述。 一、環境準備 在進行MySQL …

    編程 2025-04-27

發表回復

登錄後才能評論