首頁 資料庫 mysql教程 MySQL 备份和恢复(二)基于LVM实现几乎热备

MySQL 备份和恢复(二)基于LVM实现几乎热备

Jun 07, 2016 pm 04:54 PM
mysql備份 恢復

LVM(LogicalVolumeManagement逻辑卷管理)实现几乎热备的原理:利用LVM的快照卷达到可以保存数据库在某一时刻的瞬时状态,只需把当时的快照备份出来即可。LVM的

LVM(Logical Volume Management逻辑卷管理)实现几乎热备的原理:利用LVM的快照卷达到可以保存数据库在某一时刻的瞬时状态,只需把当时的快照备份出来即可。


LVM的快照原理:简单的讲就是lvm对某个卷创建快照卷后,快照卷则作为原卷的另一个访问入口,当原卷的数据发生变化时,则先把原卷的内容先复制一份到快照卷,然后才会继续对原卷数据的修改,这也就是之所以快照卷的容量大小应该大于整个备份过程中数据库的变化量的原因。所以当备份完成以后,快照卷也就可以拆除了,它的作用就是在备份过程中把发生变化的数据的快照时状态先拷贝过来一个副本。


用lvm对mysql备份的前提:数据文件和事务日志文件应该在同一个卷上,否则快照卷数据和事务日志时间点不一致,恢复后会引起数据库错乱。


原理明白了,操作起来就比较简单了:

当然要首先准备好lvm卷且保证mysql的datadir和innodb_log_group_home_dir在这个卷上


/* 创建一张新表tb1,并插入一些数据以做测试 */ MariaDB [hellodb]> CREATE TABLE tb1(id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,Name VARCHAR(30) NOT NULL,Gender ENUM('F','M','O') NOT NULL); Query OK, 0 rows affected (0.11 sec) MariaDB [hellodb]> DESC tb1; +--------+-------------------+------+-----+---------+----------------+ | Field  | Type              | Null | Key | Default | Extra          | +--------+-------------------+------+-----+---------+----------------+ | id     | int(11)           | NO   | PRI | NULL    | auto_increment | | Name   | varchar(30)       | NO   |     | NULL    |                | | Gender | enum('F','M','O') | NO   |     | NULL    |                | +--------+-------------------+------+-----+---------+----------------+ 3 rows in set (0.00 sec) MariaDB [hellodb]> INSERT INTO tb1 (Name,Gender) VALUES ('Bob','M'),('Tina','F'),('Axx','O'); Query OK, 3 rows affected (0.03 sec) Records: 3  Duplicates: 0  Warnings: 0 /* 备份前为所有表加读锁,查看一下当前二进制日志位置 */ MariaDB [(none)]> FLUSH TABLES WITH READ LOCK; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> SHOW MASTER STATUS; +------------------+----------+--------------+------------------+ | File             | Position | Binlog_Do_DB | Binlog_Ignore_DB | +------------------+----------+--------------+------------------+ | mysql-bin.000007 |      245 |              |                  | +------------------+----------+--------------+------------------+ 1 row in set (0.01 sec)

 

/* 再开一个终端,前面mysql会话不要退出 */ [root@node1 ~]# mkdir /backup/mydata-`date +%F` /* 也可以将当前二进制位置保存到文件,以备恢复时查看 */ [root@node1 ~]# mysql -e 'SHOW MASTER STATUS;' > /backup/mydata-2014-07-29/bin-pos-`date +%F-%T` /* 保证有可用的vg */ [root@node1 ~]# vgs   VG   #PV #LV #SN Attr   VSize  VFree   myvg   2   1   0 wz--n- 10.02g 7.02g   vg0    3   1   0 wz--n- 29.29g    0  /* 创建快照卷,-L | --size (LogicalVolumeSize) 指定快照卷大小,一定不可以比变化量小,否则会引起快照卷崩溃,备份失败; -n | --name 指定快照卷名字; -p | --permission 指定快照卷权限 r只读, -s --snap-shot /dev/myvg/mylv 指定要对/dev/myvg/mylv创建快照卷  如果此时数据库服务器比较繁忙,则需要等待正在提交的日志刷写到磁盘等,,可能会需要一定等待时间*/ [root@node1 ~]# lvcreate -L 100M -n mydata-snap -p r -s /dev/myvg/mylv    Logical volume "mydata-snap" created [root@node1 ~]# mkdir /mnt/snap [root@node1 ~]# mount /dev/myvg/mydata-snap /mnt/snap/ mount: block device /dev/mapper/myvg-mydata--snap is write-protected, mounting read-only [root@node1 ~]# cd /mnt/snap/ [root@node1 snap]# ls data  lost+found [root@node1 snap]# ls data/ aria_log.00000001  ib_logfile0  mysql-bin.000001  mysql-bin.000005  node1.bob.org.err aria_log_control   ib_logfile1  mysql-bin.000002  mysql-bin.000006  node1.bob.org.pid hellodb            mydb         mysql-bin.000003  mysql-bin.000007  performance_schema ibdata1            mysql        mysql-bin.000004  mysql-bin.index   test [root@node1 snap]# cp -ap /mnt/snap/data/ /backup/mydata-2014-07-29/ [root@node1 snap]# ls /backup/mydata-2014-07-29/data/ aria_log.00000001  ib_logfile0  mysql-bin.000001  mysql-bin.000005  node1.bob.org.err aria_log_control   ib_logfile1  mysql-bin.000002  mysql-bin.000006  node1.bob.org.pid hellodb            mydb         mysql-bin.000003  mysql-bin.000007  performance_schema ibdata1            mysql        mysql-bin.000004  mysql-bin.index   test

 

备份完成回到mysql会话,解锁表

MariaDB [(none)]> UNLOCK TABLES; Query OK, 0 rows affected (0.01 sec)

这样一个基于lvm快照的mysql备份就完成了,然后还可以结合二进制日志做增量备份和恢复等,可参照前一篇文章 MySQL 备份和恢复(一)mysqldump



本文出自 “不懂IT的中医不是好IT” 博客,请务必保留此出处

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

<🎜>:泡泡膠模擬器無窮大 - 如何獲取和使用皇家鑰匙
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系統,解釋
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
Mandragora:巫婆樹的耳語 - 如何解鎖抓鉤
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1664
14
CakePHP 教程
1423
52
Laravel 教程
1321
25
PHP教程
1269
29
C# 教程
1249
24
微信檔案過期怎麼恢復 微信的過期檔案能恢復嗎 微信檔案過期怎麼恢復 微信的過期檔案能恢復嗎 Feb 22, 2024 pm 02:46 PM

開啟微信,在我中選擇設置,選擇通用後選擇儲存空間,在儲存空間選擇管理,選擇要恢復檔案的對話選擇感嘆號圖示。教學適用型號:iPhone13系統:iOS15.3版本:微信8.0.24解析1先開啟微信,在我的頁面中點選設定選項。 2接著在設定頁面中找到並點選通用選項。 3然後在通用頁面中點選儲存空間。 4接下來在儲存空間頁面中點選管理。 5最後選擇要恢復檔案的對話,點選右側的感嘆號圖示。補充:微信文件一般幾天過期1要是微信接收的文件並沒有點開過的情況下,那在七十二鐘頭之後微信系統會清除掉,要是己經查看了微信

如何恢復無痕模式下的瀏覽記錄 如何恢復無痕模式下的瀏覽記錄 Feb 19, 2024 pm 04:22 PM

無痕瀏覽是一種非常方便的瀏覽方式,可以在使用電腦或行動裝置上網時保護個人隱私。無痕瀏覽模式通常會阻止瀏覽器記錄存取歷史記錄、保存Cookie和快取文件,以及防止正在瀏覽的網站在瀏覽器中留下任何痕跡。但是,對於一些特殊的情況,我們可能需要恢復無痕瀏覽的瀏覽記錄。首先,我們需要先明確一點:無痕瀏覽模式的目的是保護隱私,防止他人從瀏覽器取得使用者的上網記錄。因此,無痕瀏

如何解決Windows 11鍵盤無法輸入問題 如何解決Windows 11鍵盤無法輸入問題 Dec 28, 2023 pm 05:59 PM

最近有的朋友遇到了win11鍵盤大不了字的問題,不知道按那個鍵可以恢復,其實這可能是由於我們的鍵盤被鎖定了,只需要解鎖就可以了。 win11鍵盤打不了字按哪個鍵恢復1、首先,我們按下鍵盤上面的「左shift+左alt+numlock」組合鍵。 2、然後,開啟下圖所示的選單後,點選「是」按鈕啟用滑鼠鍵。 3.接著,點選開啟工作列的「開始功能表」或「搜尋」圖示。 4.之後,在上方搜尋搜尋框輸入「osk」開啟螢幕鍵盤應用程式。 5.最後,點選一下螢幕鍵盤右下角「numlock」鍵即可。 Ps:如果你使用的是筆記本,那麼

抖音怎麼恢復聊天火花 抖音怎麼恢復聊天火花 Mar 16, 2024 pm 01:25 PM

在抖音這個充滿創意與活力的短影片平台上,我們不僅可以欣賞到各種精彩內容,還能與志同道合的朋友展開深入的交流。其中,聊天火花作為衡量雙方互動熱度的重要指標,常常在不經意間點燃我們與好友之間的情感連結。然而,有時由於一些原因,聊天火花可能會斷開,那麼如果我們想要恢復聊天火花究竟該如何操作呢,這篇教程攻略就將為大家帶來詳細的內容攻略介紹,希望能幫助到大家。抖音聊天火花斷了怎麼恢復? 1.開啟抖音的訊息頁面,選擇好友聊天。 2、互發訊息聊天。 3.連續發送訊息3天,就可以獲得火花標識。在3天基礎上,互發圖片或視

小米雲相簿怎麼恢復到本地 小米雲相簿怎麼恢復到本地 Feb 24, 2024 pm 03:28 PM

小米雲相簿怎麼恢復到本地?小米雲相簿APP中是可以恢復到本地,但是多數的小伙伴不知道小米雲相冊如何恢復到本地中,接下來就是小編為用戶帶來的小米雲相冊恢復到本地方法圖文教程,有興趣的用戶快來一起看看吧!小米雲相簿怎麼恢復到本地1、先打開小米手機中的設定功能,主介面選擇【個人頭像】;2、然後進入到小米帳號的介面,點選【雲端服務】功能;3、接著跳到小米雲端服務的功能,選擇其中的【雲端備份】;4、最後在如下圖所示的介面,點選【雲端相簿】即可恢復相簿到本地。

恢復win11預設頭像的教程 恢復win11預設頭像的教程 Jan 02, 2024 pm 12:43 PM

如果我們更換了自己的系統帳戶頭像,但是不想要了,結果找不到win11怎麼更改預設頭像了,其實我們只要找到預設頭像的資料夾就可以恢復了。 win11頭像恢復預設1、先點開底部任務欄的“Windows標誌”2、接著在其中找到並打開“設定”3、然後進入左邊欄的“帳戶”4、隨後點開右側的“帳戶資訊” 5.開啟後,點選選擇照片中的「瀏覽檔案」6、最後進入「C:\ProgramData\Microsoft\UserAccountPictures」路徑就可以找到系統預設頭像圖片了。

如何還原Win10鍵盤快捷鍵設定? 如何還原Win10鍵盤快捷鍵設定? Dec 28, 2023 pm 11:49 PM

我們日常使用鍵盤的時候,總是會遇見各種的鍵盤問題,最很多更新了win10系統,更是如此,當鍵盤都變成了快捷鍵的時候怎麼辦呢?下面一起來看看具體的解決方法吧。 win10鍵盤變成快速鍵恢復方法1、可能是+開啟了快速鍵。 2.關閉的辦法有+(前後不能顛倒按)。 3.還有就是+退到鎖定畫面介面登陸就好了。 4.另一種可能性就是鎖住鍵盤了,按下+嘗試。 5.如果不行的話,按下++,然後再取消就行了。以上就是本站問您帶來的win10鍵盤變成快速鍵恢復方法,希望可以解決您的困惑。想了解更多的問題請收藏本站喲。歡迎

win10怎麼恢復預設壁紙 win10怎麼恢復預設壁紙 Feb 10, 2024 pm 10:51 PM

Windows10的2019年5月更新有新的、更亮的預設桌面背景。它看起來很棒-帶有新的淺色主題。如果您使用Windows10的深色主題,您可能需要更深的背景。奇怪的是,Windows10的原始桌面背景已從最新版本的Windows10中刪除。您必須從Web下載它或從舊的Windows10PC複製其檔案。儘管我們無法在Microsoft的官方網站上找到此桌布圖片,但您可以從其他來源下載它。我們在Imgur上找到了一份4K解析度的Windows10原始桌面桌布的副本。此外,還有其他尺寸和更多預設壁

See all articles