Browse Source
Patch for trunk after merge from 5.1-bugteam of bug52913.
Patch for trunk after merge from 5.1-bugteam of bug52913.
8 changed files with 446 additions and 0 deletions
-
2mysql-test/collections/default.experimental
-
116mysql-test/include/mysqlhotcopy.inc
-
22mysql-test/lib/mtr_misc.pl
-
9mysql-test/mysql-test-run.pl
-
118mysql-test/r/mysqlhotcopy_archive.result
-
164mysql-test/r/mysqlhotcopy_myisam.result
-
8mysql-test/t/mysqlhotcopy_archive.test
-
7mysql-test/t/mysqlhotcopy_myisam.test
@ -0,0 +1,116 @@ |
|||
# Test of mysqlhotcopy (perl script) |
|||
# Author: Horst Hunger |
|||
# Created: 2010-05-10 |
|||
|
|||
--source include/not_windows.inc |
|||
--source include/not_embedded.inc |
|||
|
|||
let $MYSQLD_DATADIR= `SELECT @@datadir`; |
|||
--disable_warnings |
|||
DROP DATABASE IF EXISTS hotcopy_test; |
|||
--enable_warnings |
|||
CREATE DATABASE hotcopy_test; |
|||
USE hotcopy_test; |
|||
eval CREATE TABLE t1 (c1 int, c2 varchar(20)) ENGINE=$engine; |
|||
eval CREATE TABLE t2 (c1 int, c2 varchar(20)) ENGINE=$engine; |
|||
eval CREATE TABLE t3 (c1 int, c2 varchar(20)) ENGINE=$engine; |
|||
|
|||
INSERT INTO t1 VALUES (1,'aaaaaaaaaaaaaaaaaaaa'),(2, 'bbbbbbbbbbbbbbbbbbbbbbb'); |
|||
INSERT INTO t2 VALUES (1,'aaaaaaaaaaaaaaaaaaaa'),(2, 'bbbbbbbbbbbbbbbbbbbbbbb'); |
|||
INSERT INTO t3 VALUES (1,'aaaaaaaaaaaaaaaaaaaa'),(2, 'bbbbbbbbbbbbbbbbbbbbbbb'); |
|||
|
|||
--replace_result $MYSQLD_DATADIR MYSQLD_DATADIR |
|||
--list_files $MYSQLD_DATADIR/hotcopy_test |
|||
|
|||
# backup into another database in the same directory |
|||
--replace_result $MASTER_MYSOCK MASTER_MYSOCK |
|||
--exec $MYSQLHOTCOPY --quiet -S $MASTER_MYSOCK -u root hotcopy_test hotcopy_save |
|||
|
|||
--replace_result $MYSQLD_DATADIR MYSQLD_DATADIR |
|||
--list_files $MYSQLD_DATADIR/hotcopy_save |
|||
|
|||
USE hotcopy_save; |
|||
SELECT * FROM t1; |
|||
SELECT * FROM t2; |
|||
SELECT * FROM t3; |
|||
|
|||
# restore data into the original database with mysqlhotcopy |
|||
if(`SELECT engine= 'MyISAM' FROM information_schema.tables WHERE table_name='t1'`) |
|||
{ |
|||
USE hotcopy_test; |
|||
DELETE FROM t1; |
|||
SELECT * FROM t1; |
|||
|
|||
--replace_result $MASTER_MYSOCK MASTER_MYSOCK |
|||
--exec $MYSQLHOTCOPY --quiet --addtodest -S $MASTER_MYSOCK -u root hotcopy_save hotcopy_test |
|||
|
|||
USE hotcopy_save; |
|||
SELECT * FROM t1; |
|||
SELECT * FROM t2; |
|||
SELECT * FROM t3; |
|||
} |
|||
|
|||
USE hotcopy_test; |
|||
DROP TABLE t2; |
|||
--replace_result $MYSQLD_DATADIR MYSQLD_DATADIR |
|||
--list_files $MYSQLD_DATADIR/hotcopy_test |
|||
|
|||
--replace_result $MASTER_MYSOCK MASTER_MYSOCK |
|||
--exec $MYSQLHOTCOPY --quiet --addtodest -S $MASTER_MYSOCK -u root hotcopy_save hotcopy_test |
|||
|
|||
FLUSH TABLES; |
|||
SELECT * FROM t1; |
|||
SELECT * FROM t2; |
|||
SELECT * FROM t3; |
|||
|
|||
# backup of db into a directory |
|||
USE hotcopy_test; |
|||
--replace_result $MASTER_MYSOCK MASTER_MYSOCK $MYSQLTEST_VARDIR MYSQLTEST_VARDIR |
|||
--exec $MYSQLHOTCOPY --quiet -S $MASTER_MYSOCK -u root hotcopy_test $MYSQLTEST_VARDIR/tmp |
|||
--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR |
|||
--list_files $MYSQLTEST_VARDIR/tmp/hotcopy_test |
|||
#--exec rm -rf $MYSQLTEST_VARDIR/tmp/hotcopy_test |
|||
--remove_files_wildcard $MYSQLTEST_VARDIR/tmp/hotcopy_test * |
|||
--rmdir $MYSQLTEST_VARDIR/tmp/hotcopy_test |
|||
|
|||
# backup without full index files |
|||
# reproduction of bug#53556, "--list_files" shows MYI files, which is wrong. |
|||
DROP DATABASE hotcopy_save; |
|||
--replace_result $MASTER_MYSOCK MASTER_MYSOCK |
|||
--exec $MYSQLHOTCOPY --quiet --noindices -S $MASTER_MYSOCK -u root hotcopy_test hotcopy_save |
|||
--replace_result $MYSQLD_DATADIR MYSQLD_DATADIR |
|||
--list_files $MYSQLD_DATADIR/hotcopy_save |
|||
|
|||
# test of option "allowold" |
|||
DROP DATABASE hotcopy_save; |
|||
--replace_result $MASTER_MYSOCK MASTER_MYSOCK |
|||
--exec $MYSQLHOTCOPY --quiet -S $MASTER_MYSOCK -u root hotcopy_test hotcopy_save |
|||
--replace_result $MYSQLD_DATADIR MYSQLD_DATADIR |
|||
--list_files $MYSQLD_DATADIR/hotcopy_save |
|||
--replace_result $MASTER_MYSOCK MASTER_MYSOCK |
|||
--error 9,2304 |
|||
--exec $MYSQLHOTCOPY --quiet -S $MASTER_MYSOCK -u root hotcopy_test hotcopy_save |
|||
--replace_result $MASTER_MYSOCK MASTER_MYSOCK |
|||
--exec $MYSQLHOTCOPY --quiet --allowold -S $MASTER_MYSOCK -u root hotcopy_test hotcopy_save |
|||
--replace_result $MYSQLD_DATADIR MYSQLD_DATADIR |
|||
--list_files $MYSQLD_DATADIR/hotcopy_save |
|||
|
|||
# test of option "keepold" |
|||
--replace_result $MASTER_MYSOCK MASTER_MYSOCK |
|||
--exec $MYSQLHOTCOPY --quiet --keepold -S $MASTER_MYSOCK -u root hotcopy_test hotcopy_save |
|||
--replace_result $MYSQLD_DATADIR MYSQLD_DATADIR |
|||
--list_files $MYSQLD_DATADIR/hotcopy_save_old |
|||
--replace_result $MYSQLD_DATADIR MYSQLD_DATADIR |
|||
--list_files $MYSQLD_DATADIR/hotcopy_save |
|||
|
|||
# test of option "suffix" |
|||
--replace_result $MASTER_MYSOCK MASTER_MYSOCK |
|||
--exec $MYSQLHOTCOPY --quiet --suffix=_cpy -S $MASTER_MYSOCK -u root hotcopy_test |
|||
--replace_result $MYSQLD_DATADIR MYSQLD_DATADIR |
|||
--list_files $MYSQLD_DATADIR/hotcopy_test_cpy |
|||
DROP DATABASE hotcopy_test_cpy; |
|||
|
|||
DROP DATABASE hotcopy_test; |
|||
DROP DATABASE hotcopy_save; |
|||
DROP DATABASE hotcopy_save_old; |
|||
|
@ -0,0 +1,118 @@ |
|||
DROP DATABASE IF EXISTS hotcopy_test; |
|||
CREATE DATABASE hotcopy_test; |
|||
USE hotcopy_test; |
|||
CREATE TABLE t1 (c1 int, c2 varchar(20)) ENGINE=archive; |
|||
CREATE TABLE t2 (c1 int, c2 varchar(20)) ENGINE=archive; |
|||
CREATE TABLE t3 (c1 int, c2 varchar(20)) ENGINE=archive; |
|||
INSERT INTO t1 VALUES (1,'aaaaaaaaaaaaaaaaaaaa'),(2, 'bbbbbbbbbbbbbbbbbbbbbbb'); |
|||
Warnings: |
|||
Warning 1265 Data truncated for column 'c2' at row 2 |
|||
INSERT INTO t2 VALUES (1,'aaaaaaaaaaaaaaaaaaaa'),(2, 'bbbbbbbbbbbbbbbbbbbbbbb'); |
|||
Warnings: |
|||
Warning 1265 Data truncated for column 'c2' at row 2 |
|||
INSERT INTO t3 VALUES (1,'aaaaaaaaaaaaaaaaaaaa'),(2, 'bbbbbbbbbbbbbbbbbbbbbbb'); |
|||
Warnings: |
|||
Warning 1265 Data truncated for column 'c2' at row 2 |
|||
db.opt |
|||
t1.ARZ |
|||
t1.frm |
|||
t2.ARZ |
|||
t2.frm |
|||
t3.ARZ |
|||
t3.frm |
|||
db.opt |
|||
t1.ARZ |
|||
t1.frm |
|||
t2.ARZ |
|||
t2.frm |
|||
t3.ARZ |
|||
t3.frm |
|||
USE hotcopy_save; |
|||
SELECT * FROM t1; |
|||
c1 c2 |
|||
1 aaaaaaaaaaaaaaaaaaaa |
|||
2 bbbbbbbbbbbbbbbbbbbb |
|||
SELECT * FROM t2; |
|||
c1 c2 |
|||
1 aaaaaaaaaaaaaaaaaaaa |
|||
2 bbbbbbbbbbbbbbbbbbbb |
|||
SELECT * FROM t3; |
|||
c1 c2 |
|||
1 aaaaaaaaaaaaaaaaaaaa |
|||
2 bbbbbbbbbbbbbbbbbbbb |
|||
USE hotcopy_test; |
|||
DROP TABLE t2; |
|||
db.opt |
|||
t1.ARZ |
|||
t1.frm |
|||
t3.ARZ |
|||
t3.frm |
|||
FLUSH TABLES; |
|||
SELECT * FROM t1; |
|||
c1 c2 |
|||
1 aaaaaaaaaaaaaaaaaaaa |
|||
2 bbbbbbbbbbbbbbbbbbbb |
|||
SELECT * FROM t2; |
|||
c1 c2 |
|||
1 aaaaaaaaaaaaaaaaaaaa |
|||
2 bbbbbbbbbbbbbbbbbbbb |
|||
SELECT * FROM t3; |
|||
c1 c2 |
|||
1 aaaaaaaaaaaaaaaaaaaa |
|||
2 bbbbbbbbbbbbbbbbbbbb |
|||
USE hotcopy_test; |
|||
db.opt |
|||
t1.ARZ |
|||
t1.frm |
|||
t2.ARZ |
|||
t2.frm |
|||
t3.ARZ |
|||
t3.frm |
|||
DROP DATABASE hotcopy_save; |
|||
db.opt |
|||
t1.ARZ |
|||
t1.frm |
|||
t2.ARZ |
|||
t2.frm |
|||
t3.ARZ |
|||
t3.frm |
|||
DROP DATABASE hotcopy_save; |
|||
db.opt |
|||
t1.ARZ |
|||
t1.frm |
|||
t2.ARZ |
|||
t2.frm |
|||
t3.ARZ |
|||
t3.frm |
|||
db.opt |
|||
t1.ARZ |
|||
t1.frm |
|||
t2.ARZ |
|||
t2.frm |
|||
t3.ARZ |
|||
t3.frm |
|||
db.opt |
|||
t1.ARZ |
|||
t1.frm |
|||
t2.ARZ |
|||
t2.frm |
|||
t3.ARZ |
|||
t3.frm |
|||
db.opt |
|||
t1.ARZ |
|||
t1.frm |
|||
t2.ARZ |
|||
t2.frm |
|||
t3.ARZ |
|||
t3.frm |
|||
db.opt |
|||
t1.ARZ |
|||
t1.frm |
|||
t2.ARZ |
|||
t2.frm |
|||
t3.ARZ |
|||
t3.frm |
|||
DROP DATABASE hotcopy_test_cpy; |
|||
DROP DATABASE hotcopy_test; |
|||
DROP DATABASE hotcopy_save; |
|||
DROP DATABASE hotcopy_save_old; |
@ -0,0 +1,164 @@ |
|||
DROP DATABASE IF EXISTS hotcopy_test; |
|||
CREATE DATABASE hotcopy_test; |
|||
USE hotcopy_test; |
|||
CREATE TABLE t1 (c1 int, c2 varchar(20)) ENGINE=MyISAM; |
|||
CREATE TABLE t2 (c1 int, c2 varchar(20)) ENGINE=MyISAM; |
|||
CREATE TABLE t3 (c1 int, c2 varchar(20)) ENGINE=MyISAM; |
|||
INSERT INTO t1 VALUES (1,'aaaaaaaaaaaaaaaaaaaa'),(2, 'bbbbbbbbbbbbbbbbbbbbbbb'); |
|||
Warnings: |
|||
Warning 1265 Data truncated for column 'c2' at row 2 |
|||
INSERT INTO t2 VALUES (1,'aaaaaaaaaaaaaaaaaaaa'),(2, 'bbbbbbbbbbbbbbbbbbbbbbb'); |
|||
Warnings: |
|||
Warning 1265 Data truncated for column 'c2' at row 2 |
|||
INSERT INTO t3 VALUES (1,'aaaaaaaaaaaaaaaaaaaa'),(2, 'bbbbbbbbbbbbbbbbbbbbbbb'); |
|||
Warnings: |
|||
Warning 1265 Data truncated for column 'c2' at row 2 |
|||
db.opt |
|||
t1.MYD |
|||
t1.MYI |
|||
t1.frm |
|||
t2.MYD |
|||
t2.MYI |
|||
t2.frm |
|||
t3.MYD |
|||
t3.MYI |
|||
t3.frm |
|||
db.opt |
|||
t1.MYD |
|||
t1.MYI |
|||
t1.frm |
|||
t2.MYD |
|||
t2.MYI |
|||
t2.frm |
|||
t3.MYD |
|||
t3.MYI |
|||
t3.frm |
|||
USE hotcopy_save; |
|||
SELECT * FROM t1; |
|||
c1 c2 |
|||
1 aaaaaaaaaaaaaaaaaaaa |
|||
2 bbbbbbbbbbbbbbbbbbbb |
|||
SELECT * FROM t2; |
|||
c1 c2 |
|||
1 aaaaaaaaaaaaaaaaaaaa |
|||
2 bbbbbbbbbbbbbbbbbbbb |
|||
SELECT * FROM t3; |
|||
c1 c2 |
|||
1 aaaaaaaaaaaaaaaaaaaa |
|||
2 bbbbbbbbbbbbbbbbbbbb |
|||
USE hotcopy_test; |
|||
DELETE FROM t1; |
|||
SELECT * FROM t1; |
|||
c1 c2 |
|||
USE hotcopy_save; |
|||
SELECT * FROM t1; |
|||
c1 c2 |
|||
1 aaaaaaaaaaaaaaaaaaaa |
|||
2 bbbbbbbbbbbbbbbbbbbb |
|||
SELECT * FROM t2; |
|||
c1 c2 |
|||
1 aaaaaaaaaaaaaaaaaaaa |
|||
2 bbbbbbbbbbbbbbbbbbbb |
|||
SELECT * FROM t3; |
|||
c1 c2 |
|||
1 aaaaaaaaaaaaaaaaaaaa |
|||
2 bbbbbbbbbbbbbbbbbbbb |
|||
USE hotcopy_test; |
|||
DROP TABLE t2; |
|||
db.opt |
|||
t1.MYD |
|||
t1.MYI |
|||
t1.frm |
|||
t3.MYD |
|||
t3.MYI |
|||
t3.frm |
|||
FLUSH TABLES; |
|||
SELECT * FROM t1; |
|||
c1 c2 |
|||
1 aaaaaaaaaaaaaaaaaaaa |
|||
2 bbbbbbbbbbbbbbbbbbbb |
|||
SELECT * FROM t2; |
|||
c1 c2 |
|||
1 aaaaaaaaaaaaaaaaaaaa |
|||
2 bbbbbbbbbbbbbbbbbbbb |
|||
SELECT * FROM t3; |
|||
c1 c2 |
|||
1 aaaaaaaaaaaaaaaaaaaa |
|||
2 bbbbbbbbbbbbbbbbbbbb |
|||
USE hotcopy_test; |
|||
db.opt |
|||
t1.MYD |
|||
t1.MYI |
|||
t1.frm |
|||
t2.MYD |
|||
t2.MYI |
|||
t2.frm |
|||
t3.MYD |
|||
t3.MYI |
|||
t3.frm |
|||
DROP DATABASE hotcopy_save; |
|||
db.opt |
|||
t1.MYD |
|||
t1.MYI |
|||
t1.frm |
|||
t2.MYD |
|||
t2.MYI |
|||
t2.frm |
|||
t3.MYD |
|||
t3.MYI |
|||
t3.frm |
|||
DROP DATABASE hotcopy_save; |
|||
db.opt |
|||
t1.MYD |
|||
t1.MYI |
|||
t1.frm |
|||
t2.MYD |
|||
t2.MYI |
|||
t2.frm |
|||
t3.MYD |
|||
t3.MYI |
|||
t3.frm |
|||
db.opt |
|||
t1.MYD |
|||
t1.MYI |
|||
t1.frm |
|||
t2.MYD |
|||
t2.MYI |
|||
t2.frm |
|||
t3.MYD |
|||
t3.MYI |
|||
t3.frm |
|||
db.opt |
|||
t1.MYD |
|||
t1.MYI |
|||
t1.frm |
|||
t2.MYD |
|||
t2.MYI |
|||
t2.frm |
|||
t3.MYD |
|||
t3.MYI |
|||
t3.frm |
|||
db.opt |
|||
t1.MYD |
|||
t1.MYI |
|||
t1.frm |
|||
t2.MYD |
|||
t2.MYI |
|||
t2.frm |
|||
t3.MYD |
|||
t3.MYI |
|||
t3.frm |
|||
db.opt |
|||
t1.MYD |
|||
t1.MYI |
|||
t1.frm |
|||
t2.MYD |
|||
t2.MYI |
|||
t2.frm |
|||
t3.MYD |
|||
t3.MYI |
|||
t3.frm |
|||
DROP DATABASE hotcopy_test_cpy; |
|||
DROP DATABASE hotcopy_test; |
|||
DROP DATABASE hotcopy_save; |
|||
DROP DATABASE hotcopy_save_old; |
@ -0,0 +1,8 @@ |
|||
# Test of mysqlhotcopy (perl script) |
|||
# Author: Horst Hunger |
|||
# Created: 2010-05-10 |
|||
|
|||
--source include/have_archive.inc |
|||
let $engine= archive; |
|||
--source include/mysqlhotcopy.inc |
|||
--exit |
@ -0,0 +1,7 @@ |
|||
# Test of mysqlhotcopy (perl script) |
|||
# Author: Horst Hunger |
|||
# Created: 2010-05-10 |
|||
|
|||
let $engine= MyISAM; |
|||
--source include/mysqlhotcopy.inc |
|||
--exit |
Write
Preview
Loading…
Cancel
Save
Reference in new issue