mirror of
https://github.com/MariaDB/server.git
synced 2025-01-17 20:42:30 +01:00
925fba7a03
mysql-test/t/ndb_dd_backuprestore.test: make sure only run in default cluster mysql-test/t/rpl_ndb_dd_advance.test: make sure only run in default cluster mysql-test/t/rpl_ndb_sync.test: make sure only run in default cluster
104 lines
3.3 KiB
Text
104 lines
3.3 KiB
Text
--source include/have_ndb.inc
|
|
--source include/ndb_default_cluster.inc
|
|
--source include/not_embedded.inc
|
|
--source include/have_binlog_format_row.inc
|
|
--source include/master-slave.inc
|
|
|
|
#
|
|
# Currently test only works with ndb since it retrieves "old"
|
|
# binlog positions with cluster.binlog_index and apply_status;
|
|
#
|
|
|
|
# stop the save
|
|
--connection slave
|
|
STOP SLAVE;
|
|
CREATE DATABASE ndbsynctest;
|
|
USE ndbsynctest;
|
|
|
|
# get some data on the master
|
|
--connection master
|
|
CREATE DATABASE ndbsynctest;
|
|
USE ndbsynctest;
|
|
CREATE TABLE t1 (c1 BIT(1) NOT NULL, c2 BIT(1) NOT NULL, c3 CHAR(15), PRIMARY KEY(c3)) ENGINE = NDB ;
|
|
INSERT INTO t1 VALUES (1,1,"row1"),(0,1,"row2"),(1,0,"row3"),(0,0,"row4");
|
|
CREATE TABLE t2 (c1 CHAR(15), c2 BIT(1) NOT NULL, c3 BIT(1) NOT NULL, PRIMARY KEY(c1)) ENGINE = NDB ;
|
|
INSERT INTO t2 VALUES ("ABC",1,1),("BCDEF",0,1),("CD",1,0),("DEFGHIJKL",0,0);
|
|
SELECT hex(c1),hex(c2),c3 FROM t1 ORDER BY c3;
|
|
SELECT hex(c2),hex(c3),c1 FROM t2 ORDER BY c1;
|
|
|
|
# take a backup on master
|
|
--source include/ndb_backup.inc
|
|
|
|
# update a row
|
|
UPDATE t1 SET c2=0 WHERE c3="row2";
|
|
SELECT hex(c1),hex(c2),c3 FROM t1 ORDER BY c3;
|
|
|
|
# restore on slave, first check that nothing is there
|
|
--connection slave
|
|
|
|
# we should have no tables
|
|
SHOW TABLES;
|
|
|
|
--exec $NDB_TOOLS_DIR/ndb_restore --no-defaults --ndb-connectstring="localhost:$NDBCLUSTER_PORT_SLAVE" -b $the_backup_id -n 1 -m -r --print --print_meta $NDB_BACKUP_DIR/BACKUP/BACKUP-$the_backup_id >> $NDB_TOOLS_OUTPUT
|
|
--exec $NDB_TOOLS_DIR/ndb_restore --no-defaults --ndb-connectstring="localhost:$NDBCLUSTER_PORT_SLAVE" -b $the_backup_id -n 2 -r -e --print --print_meta $NDB_BACKUP_DIR/BACKUP/BACKUP-$the_backup_id >> $NDB_TOOLS_OUTPUT
|
|
|
|
#
|
|
# BUG#11960
|
|
# prior to bugfix "DROP DATABASE" would give a warning since
|
|
# the events were not created by ndb_restore
|
|
#
|
|
DROP DATABASE ndbsynctest;
|
|
CREATE DATABASE ndbsynctest;
|
|
USE ndbsynctest;
|
|
--exec $NDB_TOOLS_DIR/ndb_restore --no-defaults --ndb-connectstring="localhost:$NDBCLUSTER_PORT_SLAVE" -b $the_backup_id -n 1 -m -r --print --print_meta $NDB_BACKUP_DIR/BACKUP/BACKUP-$the_backup_id >> $NDB_TOOLS_OUTPUT
|
|
--exec $NDB_TOOLS_DIR/ndb_restore --no-defaults --ndb-connectstring="localhost:$NDBCLUSTER_PORT_SLAVE" -b $the_backup_id -n 2 -r -e --print --print_meta $NDB_BACKUP_DIR/BACKUP/BACKUP-$the_backup_id >> $NDB_TOOLS_OUTPUT
|
|
|
|
# continue test
|
|
SHOW TABLES;
|
|
|
|
SELECT hex(c1),hex(c2),c3 FROM t1 ORDER BY c3;
|
|
SELECT hex(c2),hex(c3),c1 FROM t2 ORDER BY c1;
|
|
|
|
#
|
|
# now setup replication to continue from last epoch
|
|
--source include/ndb_setup_slave.inc
|
|
--connection slave
|
|
START SLAVE;
|
|
|
|
#
|
|
#
|
|
#
|
|
--connection master
|
|
--sync_slave_with_master
|
|
--connection slave
|
|
--replace_result $MASTER_MYPORT MASTER_PORT
|
|
--replace_column 1 <Slave_IO_State> 7 <Read_Master_Log_Pos> 8 <Relay_Log_File> 9 <Relay_Log_Pos> 16 <Replicate_Ignore_Table> 22 <Exec_Master_Log_Pos> 23 <Relay_Log_Space> 33 <Seconds_Behind_Master>
|
|
SHOW SLAVE STATUS;
|
|
|
|
SELECT hex(c1),hex(c2),c3 FROM t1 ORDER BY c3;
|
|
SELECT hex(c2),hex(c3),c1 FROM t2 ORDER BY c1;
|
|
|
|
#
|
|
# Cleanup
|
|
#
|
|
|
|
--connection master
|
|
DROP DATABASE ndbsynctest;
|
|
--sync_slave_with_master
|
|
--connection slave
|
|
STOP SLAVE;
|
|
|
|
#
|
|
# Test some replication commands
|
|
#
|
|
--connection master
|
|
reset master;
|
|
# should now contain nothing
|
|
select * from cluster.binlog_index;
|
|
|
|
--connection slave
|
|
reset slave;
|
|
# should now contain nothing
|
|
select * from cluster.apply_status;
|
|
|
|
# End 5.1 Test
|