Əsas səhifə > MySQL administration, MySQL backup and recovery > Making full physical backup-innobackupex

Making full physical backup-innobackupex

Installing Xtrabackup on Fedora 17
innobackupex vasitəsilə Hot MySQL backup alınmasına baxacıq. Yuxarıdakı linkdən Xtrabackup-ın install olunması var.
Onu qeyd etmək lazımdır ki, Xtrabackup əslində 3 tool-dan ibarətdir ibarətdir:
innobackupex — Perl-də yazılmiş script-dir. MyİSAM,İnnoDB,XtraDB cədvəllərin backup-ını almaqla full database backup edir. İnnoDB üçün xtrabackup-dan istifadə edir
xtrabackup — yalnızca İnnoDB və XtraDB backup alır
xbstream — new utility that allows streaming and extracting files to/from the xbstream format.

xtrabackup-ın özünün restore funksiyası olmadığı üçün biz backup-lar üçün innobackupex istifadə edəcik.

Backup-ın yaradılması:

[root@sh ~]# innobackupex --user=root --password=12345 /home/shahriyar/Data/base_backup --no-timestamp

base_backup adlı directory yaranacaq və /var/lib/mysql datadirectory-də olan hər şey backup olunacaq.
innobackupex özü bu datadirectory-ni my.cnf-dən oxuyur.
Komandanı işlətdikdən sonrakı output belə davam edir:

InnoDB Backup Utility v1.5.1-xtrabackup; Copyright 2003, 2009 Innobase Oy
and Percona Inc 2009-2012.  All Rights Reserved.
.
.
121228 21:32:06  innobackupex: Starting to backup .frm, .MRG, .MYD, .MYI,
innobackupex: .TRG, .TRN, .ARM, .ARZ, .CSM, .CSV and .opt files in
innobackupex: subdirectories of '/var/lib/mysql'
.
.
innobackupex: Backup created in directory '/home/shahriyar/Data/base_backup'
innobackupex: MySQL binlog position: filename 'mysql-bin.000009', position 107
121228 21:32:12  innobackupex: completed OK!

OK! o deməkdir ki, hər şey əla keçdi. bundan əlavə maraqlı məlumat da ən sonda print olunur mysql-bin.000009 bu binary log, backup-dan sonra yaradılır və bu o deməkdir ki point-time-recovery zamanı məhz bu binary log-dan istifadə edəcik.

Lakin bu hələ son deyil mütləq şəkildə biz bu backup-ı prepare etməliyik. Prepare məqsədi:
After creating a backup, the data is not ready to be restored. There might be uncommitted transactions to be undone or transactions in the logs to be replayed. Doing those pending operations will make the data files consistent and it is the purpose of the prepare stage. Once this has been done, the data is ready to be used.
Documentation-dan da göründüyü kimi backup yalnız prepare edildikdən sonra restore-a hazır vəziyyətə gəlir:

[root@sh ~]# innobackupex --apply-log /home/shahriyar/Data/base_backup
.
.
.
xtrabackup: starting shutdown with innodb_fast_shutdown = 1
121228 21:38:06  InnoDB: Starting shutdown...
121228 21:38:10  InnoDB: Shutdown completed; log sequence number 5462135820
121228 21:38:10  innobackupex: completed OK!

Restore etməyin bir mənası olması üçün hər hansı bir schema-nı drop edək:

mysql> drop schema sakila;
Query OK, 23 rows affected (0.95 sec)

mysql> use sakila;
ERROR 1049 (42000): Unknown database 'sakila'

indi isə restore edək:

[root@sh ~]# innobackupex --copy-back /home/shahriyar/Data/base_backup
IMPORTANT: Please check that the copy-back run completes successfully.
           At the end of a successful copy-back run innobackupex
           prints "completed OK!".

Original data directory is not empty! at /bin/innobackupex line 575.

Yuxarıdakı ERROR-u alırıq. Səbəbi- full backup restore zamanı belə bir tələb var ki, datadirectory indiki halda /var/lib/mysql boş olmalıdır ki, heçnə overwrite olunmasın. Partial restore-da belə bir tələb yoxdur.
Çıxış yolu:

[root@sh ~]# systemctl stop mysqld.service
[root@sh ~]# mkdir /tmp/mysql
[root@sh ~]# mv /var/lib/mysql/* /tmp/mysql
[root@sh ~]# ls /var/lib/mysql

Və həqiqətən /var/lib/mysql boşaldıqdan sonra restore etsək:

[root@sh ~]# innobackupex --copy-back /home/shahriyar/Data/base_backup
.
.
innobackupex: Finished copying back files.
121228 21:57:06  innobackupex: completed OK!

Daha sonra da:

[root@sh ~]# chown -R mysql:mysql /var/lib/mysql
[root@sh ~]# systemctl start mysqld.service

Və drop olunmuş sakila schema-sına baxdıqda:

mysql> show schemas like 'sa%';
+----------------+
| Database (sa%) |
+----------------+
| sakila         |
+----------------+
1 row in set (0.00 sec)

sakila schema bərpa olundu təbriklər🙂
Gələcək yazılar incremental backup-innobackupex, full physical backup-xtrabackup,incremental backup-xtrabackup və.s haqqında olacaq
Təşəkkürlər🙂

  1. Hələlik heç bir şərh yoxdur
  1. No trackbacks yet.

Bir cavab yazın

Sistemə daxil olmaq üçün məlumatlarınızı daxil edin və ya ikonlardan birinə tıklayın:

WordPress.com Loqosu

WordPress.com hesabınızdan istifadə edərək şərh edirsinz. Çıxış / Dəyişdir )

Twitter rəsmi

Twitter hesabınızdan istifadə edərək şərh edirsinz. Çıxış / Dəyişdir )

Facebook fotosu

Facebook hesabınızdan istifadə edərək şərh edirsinz. Çıxış / Dəyişdir )

Google+ foto

Google+ hesabınızdan istifadə edərək şərh edirsinz. Çıxış / Dəyişdir )

%s qoşulma

%d bloqqer bunu bəyənir: