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

如何優(yōu)雅安全的備份MySQL數(shù)據(jù)

 更新時間:2022年10月11日 08:36:26   作者:一燈架構  
這篇文章主要介紹了如何優(yōu)雅安全的備份MySQL數(shù)據(jù)的相關資料,需要的朋友可以參考下

1. 為什么要備份數(shù)據(jù)

先說一下為什么需要備份MySQL數(shù)據(jù)?

一句話總結就是:為了保證數(shù)據(jù)的安全性。

如果我們把數(shù)據(jù)只存儲在一個地方,如果物理機器損壞,會導致數(shù)據(jù)丟失,無法恢復。

還有就是我們每次手動修改線上數(shù)據(jù)之前,為了安全起見,都需要先備份數(shù)據(jù)。防止人為的誤操作,導致弄臟數(shù)據(jù)或弄丟數(shù)據(jù)。

2. 怎樣備份MySQL數(shù)據(jù)?

想要快速簡單粗暴備份MySQL數(shù)據(jù),可以使用mysqldump命令:

# 備份test數(shù)據(jù)庫
mysqldump -uroot -p test > backup.db

但是這樣備份的可能包含臟數(shù)據(jù),比如在我們備份數(shù)據(jù)的過程中,有個下單的操作正在執(zhí)行。

下單之后,還沒有來得及扣款,就開始執(zhí)行備份數(shù)據(jù)的命令,就會出現(xiàn)臟數(shù)據(jù)。

下單,保存訂單表
備份數(shù)據(jù)
扣款

3. 怎么安全的備份數(shù)據(jù)?

mysqldump命令也提供了以事務的形式備份的參數(shù):

# 開啟一個事務備份test數(shù)據(jù)庫
mysqldump -uroot -p --single-transaction test > backup.db

開啟事務后,會跟正常業(yè)務操作產生鎖資源競爭,可能會阻塞其他的業(yè)務操作,嚴重的可能會導致服務宕機,所以備份操作盡量在業(yè)務低峰期執(zhí)行。

還有一個問題,只有InnoDB引擎支持事務命令,對于不支持的事務MyISAM引擎,備份數(shù)據(jù)的時候怎么保證數(shù)據(jù)的安全性呢?

有一個粗暴的辦法就是設置全庫只讀,禁止寫操作,這樣備份的時候不就能保證數(shù)據(jù)安全性啦。

先用命令查看一下數(shù)據(jù)庫的只讀狀態(tài):

show variables like 'read_only';

OFF表示只讀模式關閉,ON表示開啟只讀模式。

set global read_only=1;

這樣設置其實是非常危險的,如果客戶端連接斷開,整個數(shù)據(jù)庫也會一直處于只讀模式,無法進行寫操作。

更推薦的辦法是設置全局鎖 FTWRL(flush tables with read lock)。

# 設置全局鎖,禁止寫操作
flush tables with read lock;
# 釋放鎖
unlock tables;

設置全局鎖之后,如果客戶端斷開,會自動釋放鎖,更安全。

4. 怎么恢復數(shù)據(jù)?

通過備份文件恢復數(shù)據(jù)也非常簡單:

# 把備份文件數(shù)據(jù)導入到test數(shù)據(jù)庫
mysqldump -uroot -p test < backup.db

到此這篇關于如何優(yōu)雅安全的備份MySQL數(shù)據(jù)的文章就介紹到這了,更多相關備份MySQL數(shù)據(jù)內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • MySQL聚簇索引和非聚簇索引的區(qū)別詳情

    MySQL聚簇索引和非聚簇索引的區(qū)別詳情

    這篇文章主要介紹了MySQL聚簇索引和非聚簇索引的區(qū)別詳情,文章圍繞主題展開詳細的內容介紹,具有一定的參考價值,需要的朋友可以參考一下
    2022-06-06
  • Windows下MySQL5.6查找my.ini配置文件的方法

    Windows下MySQL5.6查找my.ini配置文件的方法

    今天小編就為大家分享一篇Windows下MySQL5.6查找my.ini配置文件的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-06-06
  • Mysql?InnoDB引擎中的數(shù)據(jù)頁結構詳解

    Mysql?InnoDB引擎中的數(shù)據(jù)頁結構詳解

    這篇文章主要為大家介紹了Mysql?InnoDB引擎中的數(shù)據(jù)頁結構詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-05-05
  • MySQL?常用引擎總結分享

    MySQL?常用引擎總結分享

    這篇文章主要介紹了MySQL?常用引擎總結分享,MySQL有很多存儲引擎,所謂的存儲引擎是指用于存儲、處理和保護數(shù)據(jù)的核心服務,更多常用引擎分享,需要的小伙伴可以參考下面文章內容
    2022-06-06
  • mysql的group?by使用及多字段分組

    mysql的group?by使用及多字段分組

    Group?By是一種SQL查詢語句,常用于根據(jù)一個或多個列對查詢結果進行分組,本文主要介紹了mysql的group?by使用及多字段分組,感興趣的可以了解一下
    2023-09-09
  • 詳解MySQL的主從復制、讀寫分離、備份恢復

    詳解MySQL的主從復制、讀寫分離、備份恢復

    本篇文章主要對MySQL的主從復制、讀寫分離、備份恢復進行詳細全面的講解,具有很好的參考價值,需要的朋友一起來看下吧
    2016-12-12
  • MySql如何使用not in實現(xiàn)優(yōu)化

    MySql如何使用not in實現(xiàn)優(yōu)化

    這篇文章主要介紹了MySql如何使用not in實現(xiàn)優(yōu)化,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-03-03
  • MySQL的指定范圍隨機數(shù)函數(shù)rand()的使用技巧

    MySQL的指定范圍隨機數(shù)函數(shù)rand()的使用技巧

    這篇文章主要介紹了MySQL的指定范圍隨機數(shù)函數(shù)rand()的使用技巧,需要的朋友可以參考下
    2016-09-09
  • 教你為MySQL數(shù)據(jù)庫換擋加速

    教你為MySQL數(shù)據(jù)庫換擋加速

    如果你是個賽車手,并且按一下按鈕就能夠立即更換引擎而不需要把車開到車庫里去換,那會是什么感覺呢?MySQL數(shù)據(jù)庫為開發(fā)人員所做的就好像是按按鈕換引擎;它讓你選擇數(shù)據(jù)庫引擎,并給你一條簡單的途徑來切換它。
    2010-02-02
  • mysql死鎖(dead lock)與鎖等待(lock wait)的出現(xiàn)解決

    mysql死鎖(dead lock)與鎖等待(lock wait)的出現(xiàn)解決

    死鎖和鎖等待是數(shù)據(jù)庫運維中常見的問題,區(qū)別在于死鎖會自動解除,而鎖等待需要手動處理,本文就來介紹一下mysql死鎖(dead lock)與鎖等待(lock wait),感興趣的可以了解一下
    2024-09-09

最新評論