二進位制備份還原案例
開啟二進位制日誌寫進配置檔案
vi /etc/my.cnf
[mysqld]
log_bin=/data/mysql/mysqlbinlog #等於後面是目錄路徑 mysqlbinlog是二進位制檔案字首
重啟mysql
systemctl restart mariadb
使用mysqldump工具把資料庫備份
這是備份指定資料庫
mysqldump -B hellodb > buckup/hellodb.sql
這是備份所有資料庫
mysqldump -A > buckup/all.sql
#完全備份,並記錄備份的二進位制位置(可以也用這個,這個更加好)
mysqldump -uroot -pmagedu -A -F --default-character-set=utf8 --single-transaction --master-data=2 | gzip > /backup/all_`date +%F`.sql.gz
再在資料庫表中新增資料
insert student (name,age,gender,classid) values ('chickabiddy',18,'M',7);
insert student (name,age,gender,classid) values ('Bad baby',15,'F',6);
新增完成後把二進位制檔案進行備份(二進位制檔案存放位置在var/lib/mysql(預設存放位置) 自己設定的在my.cnf檢視)
mysqlbinlog mysqlbinlog.000001 > backupmysql
#損壞資料庫
rm -rf /var/lib/mysql/*
壓縮的就解壓縮
gzip -d all_2019-11-25.sql.gz
#CentOS 8 需要事先生成資料庫相關檔案,CentOS7 不需要執行此步直接重啟
mysql_install_db --user=mysql
systemctl restart mariadb
重啟後臨時關閉二進位制日誌
MariaDB [(none)]>set sql_log_bin=0;
還原資料庫和表資料
source /backup/all.sql
source /backup/backupmysql
也可以這樣
mysqlbinlog backupmysql>> all.sql
source /backup/all.sql
相關文章
- mysqldump全量備份+mysqlbinlog二進位制日誌增量備份MySql
- 二進位制與二進位制運算
- 遠端備份MySQL二進位制日誌--read-from-remote-serverMySqlREMServer
- mysqlbinlog命令詳解 Part 7 備份二進位制日誌檔案MySql
- 進位制詳解:二進位制、八進位制和十六進位制
- JavaScript 二進位制、八進位制與十六進位制JavaScript
- 二進位制
- (二進位制)
- 十進位制——二 (八、十六 )進位制
- 二進位制,八進位制,十進位制,十六進位制的相互轉換
- 【進位制轉換】二進位制、十六進位制、十進位制、八進位制對應關係
- 二進位制、十進位制與十六進位制相互轉化
- java中二進位制、八進位制、十進位制、十六進位制的轉換Java
- 二進位制,八進位制,十進位制,十六進位制之間的轉換
- 計算機基礎進位制轉換(二進位制、八進位制、十進位制、十六進位制)計算機
- 備份還原剪下板
- 二進位制轉十進位制快速方法
- JAVA 二進位制,八進位制,十六進位制,十進位制間進行相互轉換Java
- 什麼是二進位制?二進位制如何轉換?
- 理解二進位制原碼、反碼、補碼
- 【原】二進位制部署 k8s 1.18.3K8S
- Cocoapods 二進位制
- 04 二進位制
- leetcode -- 二進位制LeetCode
- JavaScript十進位制轉換為二進位制JavaScript
- 十進位制轉二進位制推導(草稿)
- [計算機基礎] 計算機進位制轉換:二進位制、八進位制、十進位制、十六進位制計算機
- 進位制之間的轉換之“十六進位制 轉 十進位制 轉 二進位制 方案”
- 一看就懂二進位制、八進位制、十六進位制數轉換十進位制
- Ubuntu Desktop: 備份與還原Ubuntu
- 整數轉化成八進位制、十六進位制、二進位制,以及轉回
- 進位制與二進位制及相關轉換
- 二進位制原碼、反碼、補碼詳解
- 二進位制陣列陣列
- 二進位制或序列
- 3416:【例72.1】 二進位制轉化為十進位制
- ORACLE備份&恢復案例二(轉)Oracle
- Ghost備份及還原系統