mirror of
https://github.com/MariaDB/server.git
synced 2025-01-16 12:02:42 +01:00
1c55b845e0
Added support to BACKUP STAGE to maria-backup This is a port of the code from ES 10.6 See MDEV-5336 for backup stages description. The following old options are not supported by the new code: --rsync ; This is because rsync will not work on tables that are in used. --no-backup-locks ; This is disabled as mariadb-backup will always use backup locks for better performance.
70 lines
1.9 KiB
Text
70 lines
1.9 KiB
Text
#--source include/innodb_page_size.inc
|
|
|
|
# Test --databases-exclude and --tables-exclude feature of xtrabackup 2.3.8
|
|
select @@ignore_db_dirs;
|
|
|
|
let $MYSQLD_DATADIR= `select @@datadir`;
|
|
|
|
mkdir $MYSQLD_DATADIR/db3;
|
|
mkdir $MYSQLD_DATADIR/db4;
|
|
mkdir $MYSQLD_DATADIR/db5;
|
|
|
|
CREATE TABLE t1(i INT) ENGINE INNODB;
|
|
INSERT INTO t1 VALUES(1);
|
|
CREATE TABLE t2(i int) ENGINE INNODB;
|
|
|
|
CREATE DATABASE db2;
|
|
USE db2;
|
|
CREATE TABLE t1(i INT) ENGINE INNODB;
|
|
|
|
USE test;
|
|
|
|
BEGIN;
|
|
INSERT INTO db2.t1 VALUES(20);
|
|
INSERT INTO test.t1 VALUES(20);
|
|
INSERT INTO test.t2 VALUES(20);
|
|
|
|
echo # xtrabackup backup;
|
|
|
|
let $targetdir=$MYSQLTEST_VARDIR/tmp/backup;
|
|
--disable_result_log
|
|
exec $XTRABACKUP --defaults-file=$MYSQLTEST_VARDIR/my.cnf --backup --parallel=10 "--tables-exclude=test.*2" "--databases-exclude=db2" --target-dir=$targetdir;
|
|
--enable_result_log
|
|
|
|
COMMIT;
|
|
|
|
# check that only t1 table is in backup (t2 is excluded)
|
|
list_files $targetdir/test *.new;
|
|
list_files $targetdir/test *.ibd;
|
|
# check that db2 database is not in the backup (excluded)
|
|
--error 1
|
|
list_files $targetdir/db2 *.ibd;
|
|
# check that db3 database is not in the backup (excluded)
|
|
--error 1
|
|
list_files $targetdir/db3 *.ibd;
|
|
# check that db4 database is not in the backup (excluded)
|
|
--error 1
|
|
list_files $targetdir/db4 *.ibd;
|
|
# check that db5 database is in the backup
|
|
list_files $targetdir/db5 *.ibd;
|
|
|
|
DROP TABLE t1;
|
|
DROP TABLE t2;
|
|
DROP DATABASE db2;
|
|
rmdir $MYSQLD_DATADIR/db3;
|
|
rmdir $MYSQLD_DATADIR/db4;
|
|
rmdir $MYSQLD_DATADIR/db5;
|
|
|
|
--let $backup_log=$MYSQLTEST_VARDIR/tmp/backup.log
|
|
--disable_result_log
|
|
exec $XTRABACKUP --defaults-file=$MYSQLTEST_VARDIR/my.cnf --export --prepare --target-dir="$targetdir" > $backup_log;
|
|
--enable_result_log
|
|
|
|
--let SEARCH_FILE=$backup_log
|
|
--let SEARCH_PATTERN=Operating system error number
|
|
--source include/search_pattern_in_file.inc
|
|
--let SEARCH_PATTERN=Could not find a valid tablespace file for
|
|
--source include/search_pattern_in_file.inc
|
|
--remove_file $backup_log
|
|
|
|
rmdir $targetdir;
|