Mysql_innobackupex全備份+binlog進行恢復(可用)
準備備份檔案:全備份+binlog進行恢復:
配置好MySQL
解壓MySQL的安裝檔案,把安裝檔案的bin目錄配置到環境變數檔案裡面
把/usr/local/mysql/bin新增到PATH路徑下。
[[email protected] ~]# cat /root/.bash_profile
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin:/usr/local/mysql/bin
export PATH
執行生效配置檔案:
source /root/.bash_profile
檢視備份檔案
[[email protected] 102]# ll
-rw-r----- 1 root root 72087554560 Jun 15 10:18 all.tar
drwxr-xr-x 11 mysql mysql 4096 Jul 3 13:09 base_all
-rw-r----- 1 root root 40555266 Jun 15 10:06 master-bin.000318
-rw-r----- 1 root root 83286 Jun 15 10:06 master-bin.000319
-rw-r----- 1 root root 83286 Jun 15 10:06 master-bin.000320
-rw-r----- 1 root root 1884620 Jun 15 10:06 master-bin.000321
-rw-r----- 1 root root 598372 Jun 15 10:06 master-bin.000322
-rw-r----- 1 root root 492040 Jun 15 10:06 master-bin.000323
-rw-r----- 1 root root 6725783 Jun 15 10:06 master-bin.000324
解壓全備份:
[[email protected] 102]#tar -xvf /data/102/all.tar -C /data/102/base_all
複製生產環境的配置檔案,一定要複製,不然有可能會報各種錯誤。特別是資料檔案目錄要和生產環境一致。
[[email protected] 102]# cat /etc/my.cnf
[client]
port = 3306
socket =/data/mysql/data/mysql.sock
#default-character-set=gbk
[mysql]
no-auto-rehash
[mysqld]
## enable autocommit
autocommit=1
general_log=off
explicit_defaults_for_timestamp=true
character_set_server = gbk
auto_increment_increment= 2
auto_increment_offset = 1
lower_case_table_names=1
# system
basedir=/usr/local/mysql
datadir=/data/mysql/data/
max_allowed_packet=134217728
max_connections=8192
max_user_connections=8000
open_files_limit=65535
pid_file=/data/mysql/data/mysqld.pid
port=3306
server_id=128
skip_name_resolve=ON
socket=/data/mysql/data/mysql.sock
tmpdir=/data/mysql/tmp
# binlog
binlog_cache_size=32768
binlog_format=row
expire_logs_days=15
log-bin=/data/mysql/log/binlog/master-bin
log-bin-index=/data/mysql/log/binlog/master-bin.index
log_slave_updates=ON
max_binlog_cache_size=2147483648
max_binlog_size=524288000
sync_binlog=100
#relay
#relay-log=/data/mysql/log/relaylog/slave-relay-bin
#relay-log-index=/data/mysql/log/relaylog/slave-relay-bin.index
# LOGGING #
log_error = /data/mysql/log/alert.log
log_queries_not_using_indexes = 1
slow_query_log = 1
slow_query_log_file = /data/mysql/log/slow.log
log_slave_updates=ON
log_slow_admin_statements=1
long_query_time=1
#slave#
slave_skip_errors=OFF
log_slave_updates=ON
# innodb #
innodb_log_group_home_dir=/data/mysql/log/iblog
innodb_data_home_dir=/data/mysql/log/iblog
innodb_adaptive_flushing=1
#innodb_additional_mem_pool_size=20M
innodb_buffer_pool_instances=8
innodb_change_buffering=inserts
innodb_data_file_path=ibdata1:32M;ibdata2:16M:autoextend
innodb_flush_method = O_DIRECT
innodb_log_files_in_group = 4
innodb_log_file_size = 100M
innodb_flush_log_at_trx_commit = 1
innodb_file_per_table = 1
innodb_buffer_pool_size = 5G
#innodb_file_format=Barracuda
#innodb_file_io_threads=4
innodb_flush_neighbors=0
innodb_io_capacity=200
innodb_lock_wait_timeout=5
innodb_log_buffer_size=64M
innodb_lru_scan_depth=2048
innodb_max_dirty_pages_pct=60
innodb_old_blocks_time=1000
innodb_online_alter_log_max_size=200M
innodb_open_files=200
innodb_print_all_deadlocks=1
innodb_purge_threads=4
innodb_read_ahead_threshold=0
innodb_read_io_threads=8
innodb_rollback_on_timeout=0
innodb_sort_buffer_size=2M
innodb_spin_wait_delay=6
innodb_stats_on_metadata=0
innodb_strict_mode=1
innodb_sync_array_size=256
innodb_sync_spin_loops=30
innodb_thread_concurrency=64
innodb_use_native_aio=0
innodb_write_io_threads=8
innodb_support_xa=1
給配置檔案準備好目錄和許可權
[[email protected] 102]#mkdir -p /data/mysql/data/
[[email protected] 102]# mkdir -p /data/mysql/tmp
[[email protected] 102]# mkdir -p /data/mysql/log/binlog
[[email protected] 102]# mkdir -p /data/mysql/log/iblog
[[email protected] 102]# chown -R mysql:mysql /data/mysql/data/
[[email protected] 102]# chown -R mysql:mysql /data/mysql/tmp
[[email protected] 102]# chown -R mysql:mysql /data/mysql/log/binlog
[[email protected] 102]# chown -R mysql:mysql /data/mysql/log/iblog
[[email protected] 102]# touch /data/mysql/log/alert.log
[[email protected] 102]# chown mysql:mysql /data/mysql/log/alert.log
準備(prepare)一個完全備份, --apply-log , /data/102/base_all2為全備份的目錄
[[email protected] 102]#innobackupex --defaults-file=/etc/my.cnf --apply-log? /data/102/base_all
拷貝檔案到/etc/my.cnf配置檔案的資料目錄下:
[[email protected] base_all]# innobackupex --defaults-file=/etc/my.cnf --copy-back /data/102/base_all/
檢視binlog的資訊
[[email protected] base_all]# cat xtrabackup_binlog_info
master-bin.000318 37811760
啟動MySQL
[[email protected] 102]# chown -R mysql:mysql /data/mysql/data/
[[email protected] base_all]#/usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf &
檢視MySQL的程序是否存在
[[email protected] base_all]#ps -ef|grep mysql
恢復binlog日誌資料:
[[email protected] base_all]# mysqlbinlog /data/102/master-bin.000318 --start-position='37811760' |mysql -uroot -p
[[email protected] base_all]#mysqlbinlog /data/102/master-bin.000319 | mysql -uroot -p -P3306
[[email protected] base_all]# mysqlbinlog /data/102/master-bin.000321 |mysql -uroot -p -P3306
[[email protected] base_all]# mysqlbinlog /data/102/master-bin.000321 |mysql -uroot -p -P3306
[[email protected] base_all]# mysqlbinlog /data/102/master-bin.000322 |mysql -uroot -p -P3306
[[email protected] base_all]# mysqlbinlog /data/102/master-bin.000323 |mysql -uroot -p -P3306
相關推薦
Mysql_innobackupex全備份+binlog進行恢復(可用)
準備備份檔案:全備份+binlog進行恢復:配置好MySQL解壓MySQL的安裝檔案,把安裝檔案的bin目錄配置到環境變數檔案裡面把/usr/local/mysql/bin新增到PATH路徑下。[[email protected] ~]# cat /root/.
使用xtrbackup/mysqldump全量備份+binlog備份恢復到最近一個時間點
先用xtrabackup做全備: innobackupex --defaults-file=/usr/local/mysql/my.cnf --user=root --password=123 /home/backup/xtrabackup/ 全備完成之後新建sanguoyanyi表,並插入
用Mysqldump實現全庫備份+binlog的數據還原
備份 mysql 隨著業務量的增長,數據庫也是成倍增長,原來一直使用的全庫備份不再適合現在的數據庫了,動輒就備份10G-20G,太占用磁盤空間,所以就考慮用更簡潔更快速更節省磁盤空間的備份方法,這就想到了使用binlog日誌來進行備份和恢復,下面是具體實施的方法:環境介紹:操作系統:Centos
MySQL數據庫 分表分庫備份及批量恢復如何進行?
eight -- sim /bin/bash nbsp AR ble height l數據庫 腳本實現#!/bin/bashfor db_name in `mysql -e "show databases;"|sed 1d` do mkdir
實驗:模擬場景中誤刪除mysql數據庫表,然後使用全備份以及二進制日誌文件恢復操作
skip images 目錄 mysqldump 系統 cde tables ransac 環境 一、實驗環境: 1、準備兩臺虛擬機,一臺用於破壞數據庫,一臺用於還原,兩臺在同一個網絡 2、兩臺最小化安裝centos 7系統,並直接yum安裝maraidb數據庫 3、準備一
oracle11g簡單的物理全備份和恢復
1.檢視所有資料檔案 select * from dba_data_files; C:\ORACLE\ORADATA\ORCL\USERS01.DBF C:\ORACLE\ORADATA\ORCL\UNDOTBS01.DBF C:\ORACLE\ORADATA\ORCL\S
rman對oralce資料進行全備份
第一:登入rman 執行rman target / 可進入rman 第二:檢視和刪除備份 進入rman後 執行list backup命令 可以看到所有的備份集,以及存放目錄 執行delete backupset bsid 可以刪除某一個備份 bsid 是備份集的id,在
利用binlog進行日誌恢復
過濾檢視記錄 [[email protected]]# /usr/bin/mysqlbinlog --no-defaults /var/lib/mysql/mysql-bin.000001 | more 全部執行 [[email protected]
利用xtrabackup進行增量備份和增量恢復的實驗
一.xtrabackup下載安裝 下載:http://www.percona.com/redir/downloads/XtraBackup 並解壓到/usr/local下: tar -xvf percona-xtrabackup-2.0.7-552.tar.gz -C /u
mysql5.6使用xtrabackup和binlog進行完全恢復
1、連輸mysql,檢視mysql版本:[[email protected] binlog]$ mysql -uroot -p Enter password: Welcome to the MySQL monitor. Commands end with ; o
Oracle Database 12c RMAN全量+增量備份+歸檔日誌恢復詳解
Oracle可以非常方便的把資料庫恢復到具體某個時間的狀態,而且還支援全備和多級增備,備份無需停止應用服務。比起DB2需要手動逐級恢復增量備份和歸檔日誌,RMAN是非常簡單好用的資料庫商業解決方案。下面是我的環境:作業系統:CentOS 6.7Oracle版本:Oracle
Mysql binlog備份資料及恢復資料,學會這個,我在也不怕刪庫跑路啦~
導讀 我一直都主張,技多不壓身(沒有學不會的技術,只有不學習的人),多學一項技能,未來就少求人一次。網上經常聽到xxx刪庫跑路,萬一真的遇到了,相信通過今天的學習,也能將資料再恢復回來~~~ 當然啦,備份資料/還原資料也是挺重要的,可以看我另一篇:點我直達 如果感覺這樣還不安全,可以考慮授予使用者
Git系列七之備份遷移 升級 恢復管理
nss 安裝git host load centos -perm 文件拷貝 node chm 0.Gitlab安裝 1.安裝和配置必要的依賴關系在CentOS7,下面的命令將在系統防火墻打開HTTP和SSH訪問。 yum install curl openssh-ser
mysql 數據庫定時備份 增量/全備份
重新 console select 顯示 邏輯 chang 應該 sta 服務 實驗樓的 MySQL 數據庫需要設計一個自動備份方案,能夠每周執行一次全備份,每天執行一次增量備份。 數據庫名稱為 shiyanlou,管理的用戶名為 shiyanlou,密碼為 shiyanl
跳過丟失歸檔進行恢復
sequence spec sed mine rdb 跳過 ora- value corrupt 在我們恢復的時候,發現中間缺失歸檔,大部分dba覺得從缺失的歸檔開始以後的歸檔都無法進行恢復。可是我們從很規的方式,改動數據文件相應的信息是能夠跳過該缺失的歸檔,而且利
sqlserver全備份,差異備份和日誌備份
serve center 圖片 正常 gravity 完整備份 bsp nts == 差異備份是以上一個全備為基點,這個期間所有差異數據的備份。 日誌備份是基於前一個全備+日誌備份為基點,這個期間的事務日誌的備份。(日誌備份用於確保還原數據庫到某個時間點)
如何將阿裏雲mysql RDS備份文件恢復到自建數據庫
進程 .cn nec 寫到 rds 原因 indent bit edge 參考地址:https://help.aliyun.com/knowledge_detail/41817.html PS:目前恢復只支持 Linux 下進行。Linux下恢復的數據文件,無論 Windo
mysql系列之6--------使用第三方工具-percona來備份mysql和恢復
文件目錄 restart form rpm 導入 完全備份 mys 只需要 schema 使用第三方工具來備份mysql-----percona一、前期準備工作: 1、安裝依賴包:yum -y install perl-Digest-MD5 perl-DBD-
mysql-binlog日誌恢復數據庫
rop mysql- master share int 查看 start row 分享圖片 mysqlbinlog常見的選項有以下幾個:--start-datetime:從二進制日誌中讀取指定等於時間戳或者晚於本地計算機的時間--stop-datetime:從二進制日誌中
MySQL第四天(用戶授權與撤銷,完全備份和完全恢復)
運維day04一、用戶授權與撤銷數據庫管理員密碼設置?1.1修改數據庫管理員本機登錄密碼[root@db2 ~]# mysqladmin -hlocalhost -uroot -p password "123456"Enter password: mysqladmin: [Warning]