mysql基礎(二)五分鐘掌握全量與增量備份

全量備份

Linux環境

數據備份

數據庫的備份與恢復有多中方法,通過mysql自帶的mysqldump工具可對數據庫進行備份。語法:

mysqldump -u username -p password --databases db_name > file_name .sql

說明:

-u參數指定用戶名,username 填入用戶名;

-p參數指定用戶密碼,password 填入用戶密碼;

–databases參數指定要導出的數據庫,可以是一個或者多個,多個數據庫用空格分開,db_name填入要備份的數據庫;

file_name填入導出的文件名稱,可以是文件的絕對路徑,文件的格式可以.db文件或者.sql文件。

mysqldump 并不是在mysql命令行中運行,是一個可執行文件,安裝mysql后在安裝目錄下會有該工具。以linux為例,比如mysqldump 工具在/usr/bin路徑下。導出某個數據庫:

[root@201 mysqlback]# /usr/bin/mysqldump -u root -p123456 --databases mysql_test > /share/mysql_test.db

導出所有數據庫使用–all-databases參數

[root@201 mysqlback]# /usr/bin/mysqldump -u root -p 123456 --all-databases > /share/all.db

數據恢復

數據庫的恢復可以使用source命令執行,進入mysql的命令行,執行以下命名。

mysql> source /share/mysql_test.sql;
query ok, 0 rows affected (0.06 sec)

windows環境

cmd命令行備份

語法同上,比如把temp數據庫備份到 d:\temp.bak

mysqldump –u root –p123456 temp > d:\temp.bak

如果你希望備份是數據庫的某幾張表,可以在數據庫后面加要備份的表名稱,比如:

mysqldump –u root –p123456 temp dept > d:\temp.dept.bak

數據恢復

進入mysql控制臺,使用source命令備份文件恢復我們的數據,比如:

mysql>source d:\temp.dept.bak

定時備份

把備份數據庫的指令,寫入到 bat文件, 然后通過任務管理器去定時調用 bat文件執行備份,比如新建一個bakTask.bat,里面寫入mysql的備份命令:

F:\MySQL\bin\mysqldump -u root -p123456 temp dept > d:\temp.dept.bak

如果你的mysqldump.exe文件路徑有空格,則一定要使用雙引號 “ ” 包裹。把bakTask.bat做成一個任務,并設置每天定時調用。具體步驟如下:

(1) windows搜索“任務計劃程序”,打開windows的任務計劃程序。
在這里插入圖片描述

(2)選中任務計劃程序庫,右鍵創建基本任務,輸入任務名稱,選擇觸發時間,最后選中bakTask.bat文件,下一步完成任務計劃程序的創建。
在這里插入圖片描述

增量備份

一個完整的備份方案應當包含全量備份與增量備份,下面以windows環境為例,講解mysql的增量備份。當啟用增量備份之后,mysql會以二進制的形式把用戶對數據庫的操作記錄到文件中。需要注意的是,增量備份并不會記錄所有的數據庫操作。通常對ddl語句 (create alter drop),dml語句 (insert update delete),dcl語句(grant revoke set commit rollback)進行記錄,而不會記錄dql語句(select),因為數據查詢語句并不會影響數據的完整性。增量備份通常會記錄數據庫操作語句、操作時間、操作位置等內容。

啟用增量備份

在進行增量備份之前需要查看一下mysql 是否開啟log_bin

mysql> show variables like '%log_bin%';+---------------------------------+-------+| Variable_name          | Value |+---------------------------------+-------+| log_bin             | OFF  || log_bin_basename         |    || log_bin_index          |    || log_bin_trust_function_creators | OFF  || log_bin_use_v1_row_events    | OFF  || sql_log_bin           | ON   |+---------------------------------+-------+

log_bin為off說明還沒有開啟log_bin。找到mysql安裝目錄下的my.ini或者my.conf文件,啟用log_bin二進制備份,在[mysqld]下新增以下配置

[mysqld]#啟用增量備份,雙引號及雙反斜杠log-bin=log-bin=F:\\MySQLbinlog\\log-binserver-id=1

重啟mysql服務后生效,對數據庫進行操作時將會生成log-bin.000001、log-bin.index文件。log-bin.000001文件寫滿后繼續生成log-bin.000002文件,以此類推,是數據庫操作日志文件。log-bin.index記錄著操作日志文件的路徑。

log-bin操作日志文件用文本編輯器是無法查看的,需要用mysql自帶的工具進行查看。

F:\MySQL\bin>mysqlbinlog.exe F:\MySQLbinlog\log-bin.000001
mysqlbinlog: [ERROR] unknown variable 'default-character-set=utf8'

在使用mysqlbinlog工具查看時可能會報unknown variable 'default-character-set=utf8’的錯誤,可以使用以下命令查看

>mysqlbinlog.exe --no-defaults --base64-output=decode F:\MySQLbinlog\log-bin.000001
>mysqlbinlog.exe F:\MySQLbinlog\log-bin.000002 > tmp.sql

在這里插入圖片描述

關于增量備份的恢復我們放到下一篇講。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/92759.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/92759.shtml
英文地址,請注明出處:http://en.pswp.cn/web/92759.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

使用Windbg分析多線程死鎖項目實戰問題分享

目錄 1、問題描述 2、使用.effmach x86命令切換到32位上下文 3、切換到UI線程,發現UI線程死鎖了 4、使用!locks命令查看臨界區鎖的詳細信息,遇到了問題 5、使用dt命令查看臨界區對象信息,找到發生死鎖的多個線程 6、用戶態鎖與內核態鎖…

防火墻組網方式總結

一、部署模式:靈活適配多樣網絡環境下一代防火墻(NGAF)具備極強的網絡適應能力,支持五種核心部署模式,可根據不同網絡需求靈活選擇。路由模式:防火墻相當于路由器,位于內外網之間負責路由尋址&a…

AI大模型:(二)5.1 文生視頻(Text-to-Video)模型發展史

目錄 1.介紹 2.發展歷史 2.1.早期探索階段(2015-2019) 2.1.1.技術萌芽期 2.1.2.RNN/LSTM時代 2.2.技術突破期(2020-2021) 2.2.1 Transformer引入視頻生成 2.2.2 擴散模型的興起 2.3.商業化突破期(2022-2023) 2.3.1 產品化里程碑 2.3.2 競爭格局形成 2.4.革命…

14mm尋北儀能否塞進液壓支架生死縫隙?

在煤礦井下世界的方寸之間,液壓支架的每個關鍵節點都承載著千鈞重壓。頂梁鉸接點、立柱頂端、掩護梁角落,恰恰是空間最為局促的“禁區”。ER-MNS-10A MEMS尋北儀應運而生!它采用了先進的MEMS陀螺技術,以14mm至薄高度、40g極致輕盈…

python之淺拷貝深拷貝

文章目錄潛拷貝(shallow copy)深拷貝(deep copy)總結一下python的淺拷貝和深拷貝.潛拷貝(shallow copy) python中潛拷貝指的是:構造一個新的復合對象,然后將原對象中的對象引用插入其中 平常開發過程中潛拷貝是比深拷貝更常見的場景. 比如編程中使用到的一些基本的…

普通大學本科生如何入門強化學習?

問題:你平時是如何緊跟大型語言模型和智能體技術前沿的?有哪些具體的學習和跟蹤方式?回答:我會通過“輸入-內化-實踐”結合的方式跟蹤前沿。首先,學術動態方面,每天花10分鐘瀏覽arXiv的http://cs.CL和http://cs.AI板塊&#xff0c…

新手向:Python實現數據可視化圖表生成

Python數據可視化入門:從零開始生成圖表數據可視化是數據分析過程中不可或缺的關鍵環節,它通過將抽象的數字信息轉化為直觀的圖形展示,幫助分析師和決策者更快速、更準確地發現數據中隱藏的模式、規律和發展趨勢。在當今大數據時代&#xff0…

VBA即用型代碼手冊:計算選擇的單詞數Count Words in Selection

我給VBA下的定義:VBA是個人小型自動化處理的有效工具。可以大大提高自己的勞動效率,而且可以提高數據的準確性。我這里專注VBA,將我多年的經驗匯集在VBA系列九套教程中。作為我的學員要利用我的積木編程思想,積木編程最重要的是積木如何搭建及…

DNS(域名系統)

分層結構根域名(ipv4,13臺),二級域名,三級域名……相關記錄A將域名解析為ipv4地址AAAA將域名解析為ipv6地址MX指名該區域為郵件服務區PTR反向查詢將主機名解析為域名NS記錄服務器的名字CNAME別名查詢方式遞歸查詢迭代查…

【大模型】強化學習算法總結

角色和術語定義 State:狀態Action:動作Policy/actor model:策略模型,用于決策行動的主要模型Critic/value model:價值模型,用于評判某個行動的價值大小Reward model:獎勵模型,用于給…

基于梅特卡夫定律的開源鏈動2+1模式AI智能名片S2B2C商城小程序價值重構研究

摘要:梅特卡夫定律揭示了網絡價值與用戶數量的平方關系,在互聯網經濟中,連接的深度與形式正因人的參與發生質變。本文以開源鏈動21模式、AI智能名片與S2B2C商城小程序的協同應用為研究對象,通過實證分析其在社群團購、下沉市場等場…

Ubuntu22.04安裝CH340驅動及串口

一、CH340驅動安裝 1.1 查看USB設備能否被識別 CtrlAltT打開終端: lsusb 插入設備前: 插入設備后: 輸出中包含ID 1a86:7523 QinHeng Electronics CH340 serial converter的信息,這表明CH340設備已經被系統識別。 1.2 查看USB轉串…

CPU緩存(CPU Cache)和TLB(Translation Lookaside Buffer)緩存現代計算機體系結構中用于提高性能的關鍵技術

CPU緩存(CPU Cache)和TLB(Translation Lookaside Buffer)緩存是現代計算機體系結構中用于提高性能的關鍵技術。它們通過減少CPU訪問數據和指令的延遲來提高系統的整體效率。以下是對這兩者的詳細解釋: 1. CPU 緩存 CPU…

唐揚·高并發系統設計40問

課程下載:https://download.csdn.net/download/m0_66047725/91644703 00開篇詞 _ 為什么你要學習高并發系統設計?.pdf 00開篇詞丨為什么你要學習高并發系統設計?.mp3 01 _ 高并發系統:它的通用設計方法是什么?.pdf …

基于Spring Data Elasticsearch的分布式全文檢索與集群性能優化實踐指南

基于Spring Data Elasticsearch的分布式全文檢索與集群性能優化實踐指南 技術背景與應用場景 隨著大數據時代的到來,海量信息的存儲與檢索成為各類應用的核心需求。Elasticsearch 作為一款分布式搜索引擎,憑借其高可擴展、高可用和實時檢索的優勢&#x…

Linux系統編程——基礎IO

一些前置知識:文件 屬性 內容文件 分為 打開的文件、未打開的文件打開的文件:由進程打開,本質是 進程與文件 的關系;維護的文件對象先加載文件屬性,文件內容一般按需加載未打開的文件:在永久性存儲介質 —…

力扣164:最大間距

力扣164:最大間距題目思路代碼題目 給定一個無序的數組 nums,返回 數組在排序之后,相鄰元素之間最大的差值 。如果數組元素個數小于 2,則返回 0 。 您必須編寫一個在「線性時間」內運行并使用「線性額外空間」的算法。 思路 這道題的思路…

Redis類型之Hash

1.hash常用操作 這里還是要強調,redis的類型指的是value的類型。故而這里的hash是把key這一層組織完成以后,到了value這一層,value的其中一種類型還可以是hash。1.1 HSET 和 HGETHSET:設置hash類型的keyHSET key field value [fie…

Apache Pulsar性能與可用性優化實踐指南

Apache Pulsar性能與可用性優化實踐指南 一、技術背景與應用場景 隨著微服務、實時計算和大數據平臺的普及,消息系統承擔了海量數據的傳輸與解耦任務。Apache Pulsar作為新一代分布式消息與流處理系統,擁有多租戶、持久化存儲和靈活一致性的特點&#xf…

工單分類微調訓練運維管理工具原型

簡述需求進展之前,我嘗試用Longformer模型來訓練工單分類系統,但問題很快就暴露出來:Longformer訓練時間長得讓人抓狂,每次訓練只能針對一個租戶的數據,無法快速適配多個租戶的需求。切換一個使用相同標簽的租戶還能夠…