Trong một bài đăng khác, tôi đã giải thích cách tạo bản sao lưu đầy đủ bằng MySQL Enterprise Backup. Tất nhiên, phần quan trọng nhất của sao lưu không phải là "tạo bản sao lưu" mà là khôi phục bản sao lưu đã nói. Một bản sao lưu là vô giá trị nếu bạn không thể khôi phục nó
Trong bài viết này, tôi sẽ khôi phục bản sao lưu của mình trên một máy chủ hoàn toàn riêng biệt. Vì vậy, tôi đang làm theo các bước sau
- Cài đặt các tệp nhị phân MySQL trên máy chủ của bạn, theo cài đặt tiêu chuẩn cho MySQL Enterprise Edition. Đồng thời cài đặt các tệp nhị phân
mysqlbackup
trên cùng một máy chủ - Sao chép các tệp sao lưu của bạn [nếu bạn đã theo dõi bài đăng khác của tôi, đây là một thư mục như “
2016-10-07_04-00-07
“] vào máy chủ, nơi bạn muốn khôi phục bản sao lưu
Sau đó, để bắt đầu khôi phục, hãy sử dụng lệnh copy-back-and-apply-log
của mysqlbackup để khôi phục cơ sở dữ liệu của bạn
$ mysqlbackup \
--defaults-file=/var/backups/simon/mysql/2016-10-07_04-00-07/server-my.cnf \
--backup-dir=/var/backups/simon/mysql/2016-10-07_04-00-07 \
copy-back-and-apply-log
Lưu ý các tùy chọn sau cho mysqlbackup
--defaults-file
. Đường dẫn đến tệp cấu hình MySQL [thường là server-my. cnf] trong các tệp sao lưu của bạn--backup-dir
. Đường dẫn đầy đủ đến thư mục chứa các tập tin sao lưucopy-back-and-apply-log
. Lệnh này yêu cầu mysqlbackup sao chép lại tất cả các tệp dữ liệu và áp dụng nhật ký giao dịch
Đây là một ví dụ đầu ra cho quá trình khôi phục
MySQL Enterprise Backup version X.X.X [XXXX/XX/XX]
Copyright [c] 2003, 2016, Oracle and/or its affiliates. All Rights Reserved.
mysqlbackup: INFO: Starting with following command line ...
mysqlbackup
--defaults-file=/var/backups/simon/mysql/2016-10-07_04-00-07/server-my.cnf
--backup-dir=/var/backups/simon/mysql/2016-10-07_04-00-07
copy-back-and-apply-log
IMPORTANT: Please check that mysqlbackup run completes successfully.
At the end of a successful 'copy-back-and-apply-log' run mysqlbackup
prints "mysqlbackup completed OK!".
161007 21:45:27 mysqlbackup: INFO: MEB logfile created at /var/backups/simon/mysql/2016-10-07_04-00-07/meta/MEB_2016-10-07.21-45-27_copy_back_dir_to_datadir.log
--------------------------------------------------------------------
Server Repository Options:
--------------------------------------------------------------------
datadir = /usr/local/mysql/data/
innodb_data_home_dir = /usr/local/mysql/data/
innodb_data_file_path = ibdata1:12M:autoextend
innodb_log_group_home_dir = /usr/local/mysql/data/
innodb_log_files_in_group = 2
innodb_log_file_size = 50331648
innodb_page_size = 16384
innodb_checksum_algorithm = innodb
innodb_undo_directory = /usr/local/mysql/data/
innodb_undo_tablespaces = 0
innodb_undo_logs = 128
--------------------------------------------------------------------
Backup Config Options:
--------------------------------------------------------------------
datadir = /var/backups/simon/mysql/2016-10-07_04-00-07/datadir
innodb_data_home_dir = /var/backups/simon/mysql/2016-10-07_04-00-07/datadir
innodb_data_file_path = ibdata1:12M:autoextend
innodb_log_group_home_dir = /var/backups/simon/mysql/2016-10-07_04-00-07/datadir
innodb_log_files_in_group = 2
innodb_log_file_size = 50331648
innodb_page_size = 16384
innodb_checksum_algorithm = innodb
mysqlbackup: INFO: Uses posix_fadvise[] for performance optimization.
mysqlbackup: INFO: Creating 14 buffers each of size 16777216.
161007 21:45:27 mysqlbackup: INFO: Copy-back-and-apply-log operation starts with following threads
1 read-threads 1 write-threads
161007 21:45:27 mysqlbackup: INFO: Copying /var/backups/simon/mysql/2016-10-07_04-00-07/datadir/ibdata1.
161007 21:45:27 mysqlbackup: INFO: Copying /var/backups/simon/mysql/2016-10-07_04-00-07/datadir/mydb/tbs1.ibd.
161007 21:45:27 mysqlbackup: INFO: Copying /var/backups/simon/mysql/2016-10-07_04-00-07/datadir/mydb2/users.ibd.
[..]
161007 21:45:34 mysqlbackup: INFO: Completing the copy of all non-innodb files.
161007 21:45:35 mysqlbackup: INFO: Creating server config files server-my.cnf and server-all.cnf in /usr/local/mysql/data/
161007 21:45:35 mysqlbackup: INFO: Copy-back operation completed successfully.
mysqlbackup: INFO: Creating 14 buffers each of size 65536.
161007 21:45:35 mysqlbackup: INFO: Apply-log operation starts with following threads
1 read-threads 1 process-threads
161007 21:45:35 mysqlbackup: INFO: ibbackup_logfile's creation parameters:
start lsn 2380955648, end lsn 2380965814,
start checkpoint 2380955892.
InnoDB: Doing recovery: scanned up to log sequence number 2380965814
mysqlbackup: INFO: InnoDB: Starting an apply batch of log records to the database...
InnoDB: Progress in percent: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99
mysqlbackup: INFO: InnoDB: Setting log file size to 50331648
mysqlbackup: INFO: InnoDB: Setting log file size to 50331648
161007 21:45:36 mysqlbackup: INFO: We were able to parse ibbackup_logfile up to
lsn 2380965814.
161007 21:45:36 mysqlbackup: INFO: The first data file is '/usr/local/mysql/data/ibdata1'
and the new created log files are at '/usr/local/mysql/data/'
161007 21:45:37 mysqlbackup: INFO: Apply-log operation completed successfully.
161007 21:45:37 mysqlbackup: INFO: Full Backup has been restored successfully.
mysqlbackup completed OK!
Lưu ý rằng “mysqlbackup đã hoàn thành OK. ” là một dấu hiệu tốt cho thấy quá trình khôi phục đã thành công. Sau khi hoàn thành khôi phục, bạn sẽ có thể khởi động lại máy chủ MySQL và sau đó truy cập dữ liệu đã khôi phục của mình