您好,登錄后才能下訂單哦!
1)全量備份:對(duì)數(shù)據(jù)庫完整的備份
2)增量備份:從最后一次備份后改變的文件
3)差異備份:在最后一次完整后被修改的文件
建議:全量+增量=1月全量,1周增量
1)物理備份
冷備份:關(guān)閉數(shù)據(jù)后
熱備份:數(shù)據(jù)運(yùn)行狀態(tài)時(shí)
2)邏輯備份
對(duì)邏輯對(duì)象(表、庫)備份
1)數(shù)據(jù)完整
2)數(shù)據(jù)較龐大
3)時(shí)間長(zhǎng),重復(fù)性數(shù)據(jù)
打包、cp、mysqldump
1.準(zhǔn)備數(shù)據(jù)
//新建hehe數(shù)據(jù)庫 mysql> create database hehe;
//向hehe數(shù)據(jù)庫添加a表和格式 mysql>create table hehe.a(user char(4),password char(8),primary key(user));
//插入表內(nèi)數(shù)據(jù) mysql> insert into hehe.a values('Zhangs','123');
//插入表內(nèi)數(shù)據(jù) mysql> insert into hehe.a values('Lisi','123');
//關(guān)閉數(shù)據(jù)庫 /etc/init.d/mysqld stop
//備份數(shù)據(jù)庫 tar -zcvf /root/mysql.bak /usr/local/mysql/data/
mysqldump -u root -p --all-database >/root/mysql.sql //熱備份,數(shù)據(jù)庫不需停止,備份所有數(shù)據(jù)庫
//使用壓縮方式來做數(shù)據(jù)庫熱備份
mysqldump -h localhost -uroot -p --opt --single-transaction 庫名 | gzip > 庫名.sql.gz
//導(dǎo)入數(shù)據(jù)庫
gzip -dc 庫名.sql.gz | mysql -uroot -p 數(shù)據(jù)庫密碼
注:以上熱備份方式三最為安全!
//誤刪除hehe數(shù)據(jù)庫 mysql> drop database hehe;
//關(guān)閉數(shù)據(jù)庫 /etc/init.d/mysqld stop
//tar -zxvf /root/mysql.bak -C /
//進(jìn)入數(shù)據(jù)執(zhí)行命令 mysql> source /root/mysql.sql
//恢復(fù)數(shù)據(jù)mysql -u root -p < /root/mysql.sql
1.Mysql不自帶增量備份方式,需通過Binary logs(記錄所有更改操作)實(shí)現(xiàn)增量
1)準(zhǔn)備數(shù)據(jù)(同上準(zhǔn)備數(shù)據(jù))
2)開啟二進(jìn)制日志
//編輯MySQL數(shù)據(jù)庫配置文件 vim /etc/my.cnf
//重啟MySQL服務(wù) /etc/init.d/mysqld restart
/etc/init.d/mysqld stop
//備份數(shù)據(jù)庫 tar -zcvf /root/mysql.bak /usr/local/mysql/data/
mysqldump -u root -p --all-database >/root/mysql.sql //熱備份,數(shù)據(jù)庫不需停止,備份所有數(shù)據(jù)庫
//查看二進(jìn)制文件 ls /usr/local/mysql/data/
//截取二進(jìn)制文件準(zhǔn)備增加數(shù)據(jù) mysqladmin -u root -p flush-logs
//查看二進(jìn)制文件 ls /usr/local/mysql/data/
//登錄數(shù)據(jù)庫添加數(shù)據(jù) mysql> insert into hehe.a values('wang','123');
//生成一個(gè)新的二進(jìn)制文件 mysql> flush log;
//退出數(shù)據(jù)庫查看 ls /usr/local/mysql/data/
//拷貝增加的數(shù)據(jù) cp /usr/local/mysql/data/mysql-bin.000032 /root/
//查看/root/目錄 (如以下情況已經(jīng)成功備份新增加數(shù)據(jù))
//登陸數(shù)據(jù)庫誤刪除 mysql> delete hehe.a from haha.a where user='lisi';
//還原刪除的新增數(shù)據(jù)mysqlbinlog mysql-bin.000018 | mysql -u root -p
//查看數(shù)據(jù)庫 select * from hehe.a;
注:增量還原成功
//登錄數(shù)據(jù)庫查看數(shù)據(jù)是否還原 mysql> select * from hehe.a;
注:如果做增量數(shù)據(jù)備份一定在增量前截取二進(jìn)制數(shù)據(jù),在備份完成時(shí)應(yīng)再次截取二進(jìn)制數(shù)據(jù),切記一旦數(shù)據(jù)丟失所需要還原的增量數(shù)據(jù)為增量前截取的二進(jìn)制數(shù)據(jù)
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。