mysql完整備份案例

2022-09-08 02:03:13 字數 2578 閱讀 7615

vim /etc/my.cnf  //修改配置檔案使其支援漢字

【修改內容】

systemctl restart mariadb  //重啟服務

【create database client default charset=utf8;   //若配置檔案沒有生效則刪除已建立的庫,重新在建立庫時進行修改 (drop database client;   //刪除庫)】

create table user_info(身份證 int(20),姓名 char(20),性別 char(2),使用者id號 int(110),資費 int(110));

insert into user_info values('000000001','孫空武','男','001','100');

insert into user_info values('000000002','藍凌','女','012','98');

insert into user_info values('000000003','姜文','女','013','12');

insert into user_info values('000000004','關元','男','014','38');

insert into user_info values('000000004','羅中坤','男','015','39');

完整備份client.user_info表:

mkdir /backup/

mysqldump -uroot -p000000 client user_info > /backup/client.user_info-$(date +%y%m%d).sql

模擬資料丟失恢復資料:

grep -ev "^$|^-|^/" /backup/client.user_info-20191012.sql   //做乙個分析

mysql -uroot -p000000 -e 'drop table client.user_info;'   //刪除庫檔案

mysql -uroot -p000000 -e 'use client;show tables;'   //檢視

mysql -uroot -p000000 client < /backup/client.user_info-20191012.sql   //恢復備份的庫檔案   

mysql -uroot -p000000 -e 'use client;show tables;'   //檢視庫檔案

mysql -uroot -p000000 -e 'use client;select * from user_info;   //檢視一下庫內資料

vim /opt/client_bak.sh  //寫乙個備份的指令碼

【指令碼內容】

#!/bin/bash

mysqldump -uroot -p000000 client user_info > /backup/client.user_info-$(date +%y%m%d).sql

chmod +x /opt/client_bak.sh   //給指令碼乙個執行許可權

crontab -e

systemctl restart crond   //重啟服務

mysql完整備份策略

備份頻率 備份方式 儲存期限 每小時一次 日誌備份 30天每天一次 增量30天 每週一次 全量4周 每月一次 全量6月 每年一次 全量2年 儲存方式 本地 異地 bin bash etc profile week date a today date y m d month date d y m01 ...

mysql完整備份與恢復

1 備份單個資料庫 mysql資料庫自帶了乙個很好用的備份命令,就是mysqldump,他的基本使用如下 語法 mysqldump u 使用者名稱 p 資料庫名 備份的檔名 備份一 1 備份 mysqldump uroot p test opt test bak.sql 2 檢視備份資料的內容 eg...

完整備份 增量備份 差異備份

完整備份 增量備份 差異備份 完整備份 對資料檔案進行完整的備份 複製 乙份在本地或網路其他位置。比較消耗資源,但是可以保證資料完整性。a a 增量備份 在上一次完整備份 增量備份的基礎上只對每次發生變化 新增或修改 的資料檔案進行遞增備份。這種備份方式備份比較方便,可以減少資源消耗。但是有乙個問題...