国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

Mysql實時備份實現方法

2020-01-18 22:34:38
字體:
來源:轉載
供稿:網友

目前成熟的實時備份為雙機(master/slave),是基于同步日志事件來實現,那單機如何實現具有增量的備份呢?可以借用雙機的原理,非常簡單,實施步驟如下:
Mysql版本:mysql4.0+

1、vi my.cfg

復制代碼 代碼如下:

[mysqld]
log-update=/home/backup/update #添加該行

2、service mysql restart

會在/home/backup/update00001文件,內容為數據庫變化的所有SQL(沒有select)

3、每天的全備,mysql4.0+最簡單就是備份data目錄。

復制代碼 代碼如下:

service mysql stop
tar -czf data(日期).tar.gz mysql/data
service mysql start

當mysql啟動時系統會自動在/home/backup/創建update0000*的文件,那我們可以用該文件作為當天全備的增量實時備份。

4、數據還原

復制代碼 代碼如下:

service mysql stop
tar -zxvf data(日期).tar.gz mysql/
service mysql start
mysqladmin -u -p /home/backup/update0000*

如想還原昨天、前天的數據只需要找相應的update0000*來還原即可:)

以下是補充:

1、MYSQL數據庫提供了一種主從備份的機制,其實就是把主數據庫的所有的數據同時寫到備份數據庫里面,從而實現MYSQL數據庫的實時備份。
2、版本要求,首先要保證主服務器和從服務器的MYSQL版本都高于3.2,另外,從數據庫的版本可以高于主服務器,但不能低于主服務器。
3、主服務器設置:
A、先修改MY.INI中有關log-bin的設置,這是記錄數據庫更改的日志,由于MYSQL的復制機制,是基于日志的,所以主服務器必須要支持更改日志才可以。
接著設置要寫入日志的數據庫,或者不要寫入日志的數據庫,這是為了告訴MYSQL,那個庫需要備份,哪個不需要。
下面是配置詳情:

server-id=1 //數據庫的id這個應該默認是1就不用改動
log-bin=log_name //日志文件的名稱,這里可以制定日志到別的目錄 如果沒有設置則默認主機名的一個日志名稱
binlog-do-db=db_name //記錄日志的數據庫
binlog-ignore-db=db_name //不記錄日志的數據庫

上面的binlog-do-db和binlog-ignore-db可以設置成多個數據庫,每個數據庫名稱之間用“,”分割開。
下一步是設置同步數據庫的用戶賬號
mysql> GRANT REPLICATION SLAVE ON *.*
-> TO ‘備份用戶名'@'只能從這個IP登錄' IDENTIFIED BY ‘備份用戶密碼';

設置好以后,重啟一下數據庫服務。
B、鎖定現有的數據,并將數據備份
數據庫鎖定的命令是:
mysql> FLUSH TABLES WITH READ LOCK;
然后進入mysql的data目錄,然后打包你需要備份的數據庫目錄。
C、現在可以查看主服務器的狀態了:
命令如下:
mysql> show master status/G;
返回結果會是這樣的
+―――――+―――-+――――

主站蜘蛛池模板: 乌兰浩特市| 龙川县| 华安县| 武宁县| 西宁市| 漳平市| 环江| 江西省| 扬州市| 中卫市| 山阴县| 临猗县| 阿勒泰市| 南城县| 海林市| 青冈县| 北碚区| 漳浦县| 武功县| 龙岩市| 郁南县| 邳州市| 元氏县| 海阳市| 泸西县| 崇礼县| 太湖县| 小金县| 沾益县| 泗水县| 南康市| 民县| 司法| 略阳县| 清镇市| 兴宁市| 巴塘县| 丹寨县| 拜城县| 岢岚县| 湘阴县|