mirror of
https://github.com/MariaDB/server.git
synced 2025-01-20 14:02:32 +01:00
400 lines
16 KiB
Text
400 lines
16 KiB
Text
stop slave;
|
|
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
|
|
reset master;
|
|
reset slave;
|
|
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
|
|
start slave;
|
|
SET storage_engine=ndb;
|
|
|
|
=== NDB -> NDB ===
|
|
|
|
--- Doing pre test cleanup ---
|
|
DROP TABLE IF EXISTS t1;
|
|
--- Create Table Section ---
|
|
CREATE TABLE t1 (id MEDIUMINT NOT NULL,
|
|
b1 INT,
|
|
vc VARCHAR(255),
|
|
bc CHAR(255),
|
|
d DECIMAL(10,4) DEFAULT 0,
|
|
f FLOAT DEFAULT 0,
|
|
total BIGINT UNSIGNED,
|
|
y YEAR,
|
|
t DATE,
|
|
PRIMARY KEY(id));
|
|
--- Show table on master ---
|
|
SHOW CREATE TABLE t1;
|
|
Table Create Table
|
|
t1 CREATE TABLE `t1` (
|
|
`id` mediumint(9) NOT NULL,
|
|
`b1` int(11) DEFAULT NULL,
|
|
`vc` varchar(255) DEFAULT NULL,
|
|
`bc` char(255) DEFAULT NULL,
|
|
`d` decimal(10,4) DEFAULT '0.0000',
|
|
`f` float DEFAULT '0',
|
|
`total` bigint(20) unsigned DEFAULT NULL,
|
|
`y` year(4) DEFAULT NULL,
|
|
`t` date DEFAULT NULL,
|
|
PRIMARY KEY (`id`)
|
|
) ENGINE=ndbcluster DEFAULT CHARSET=latin1
|
|
--- Show table on slave ---
|
|
SHOW CREATE TABLE t1;
|
|
Table Create Table
|
|
t1 CREATE TABLE `t1` (
|
|
`id` mediumint(9) NOT NULL,
|
|
`b1` int(11) DEFAULT NULL,
|
|
`vc` varchar(255) DEFAULT NULL,
|
|
`bc` char(255) DEFAULT NULL,
|
|
`d` decimal(10,4) DEFAULT '0.0000',
|
|
`f` float DEFAULT '0',
|
|
`total` bigint(20) unsigned DEFAULT NULL,
|
|
`y` year(4) DEFAULT NULL,
|
|
`t` date DEFAULT NULL,
|
|
PRIMARY KEY (`id`)
|
|
) ENGINE=ndbcluster DEFAULT CHARSET=latin1
|
|
STOP SLAVE;
|
|
RESET SLAVE;
|
|
RESET MASTER;
|
|
START SLAVE;
|
|
--- Populate t1 with data ---
|
|
--- Select from t1 on master ---
|
|
select *
|
|
from t1
|
|
order by id;
|
|
id b1 vc bc d f total y t
|
|
2 1 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0 1965 1965-11-14
|
|
4 1 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0 1965 1985-11-14
|
|
42 1 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0 1965 1905-11-14
|
|
142 1 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0 1965 1995-11-14
|
|
412 1 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0 1965 2005-11-14
|
|
--- Select from t1 on slave ---
|
|
select *
|
|
from t1
|
|
order by id;
|
|
id b1 vc bc d f total y t
|
|
2 1 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0 1965 1965-11-14
|
|
4 1 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0 1965 1985-11-14
|
|
42 1 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0 1965 1905-11-14
|
|
142 1 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0 1965 1995-11-14
|
|
412 1 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0 1965 2005-11-14
|
|
--- Perform basic operation on master ---
|
|
--- and ensure replicated correctly ---
|
|
--- Update t1 on master --
|
|
UPDATE t1 SET b1 = 0, bc='updated', t="2006-02-22"
|
|
WHERE id < 100
|
|
ORDER BY id;
|
|
--- Check the update on master ---
|
|
SELECT *
|
|
FROM t1
|
|
WHERE id < 100
|
|
ORDER BY id;
|
|
id b1 vc bc d f total y t
|
|
2 0 Testing MySQL databases is a cool updated 654321.4321 15.21 0 1965 2006-02-22
|
|
4 0 Testing MySQL databases is a cool updated 654321.4321 15.21 0 1965 2006-02-22
|
|
42 0 Testing MySQL databases is a cool updated 654321.4321 15.21 0 1965 2006-02-22
|
|
--- Check Update on slave ---
|
|
SELECT *
|
|
FROM t1
|
|
WHERE id < 100
|
|
ORDER BY id;
|
|
id b1 vc bc d f total y t
|
|
2 0 Testing MySQL databases is a cool updated 654321.4321 15.21 0 1965 2006-02-22
|
|
4 0 Testing MySQL databases is a cool updated 654321.4321 15.21 0 1965 2006-02-22
|
|
42 0 Testing MySQL databases is a cool updated 654321.4321 15.21 0 1965 2006-02-22
|
|
--- Remove a record from t1 on master ---
|
|
DELETE FROM t1 WHERE id = 412;
|
|
--- Show current count on master for t1 ---
|
|
SELECT COUNT(*) FROM t1;
|
|
COUNT(*)
|
|
4
|
|
--- Show current count on slave for t1 ---
|
|
SELECT COUNT(*) FROM t1;
|
|
COUNT(*)
|
|
4
|
|
TRUNCATE TABLE t1;
|
|
--- Check that simple Alter statements are replicated correctly --
|
|
ALTER TABLE t1 DROP PRIMARY KEY;
|
|
ALTER TABLE t1 MODIFY vc char(32);
|
|
--- Show the new improved table on the master ---
|
|
SHOW CREATE TABLE t1;
|
|
Table Create Table
|
|
t1 CREATE TABLE `t1` (
|
|
`id` mediumint(9) NOT NULL,
|
|
`b1` int(11) DEFAULT NULL,
|
|
`vc` char(32) DEFAULT NULL,
|
|
`bc` char(255) DEFAULT NULL,
|
|
`d` decimal(10,4) DEFAULT '0.0000',
|
|
`f` float DEFAULT '0',
|
|
`total` bigint(20) unsigned DEFAULT NULL,
|
|
`y` year(4) DEFAULT NULL,
|
|
`t` date DEFAULT NULL
|
|
) ENGINE=ndbcluster DEFAULT CHARSET=latin1
|
|
--- Make sure that our tables on slave are still same engine ---
|
|
--- and that the alter statements replicated correctly ---
|
|
SHOW CREATE TABLE t1;
|
|
Table Create Table
|
|
t1 CREATE TABLE `t1` (
|
|
`id` mediumint(9) NOT NULL,
|
|
`b1` int(11) DEFAULT NULL,
|
|
`vc` char(32) DEFAULT NULL,
|
|
`bc` char(255) DEFAULT NULL,
|
|
`d` decimal(10,4) DEFAULT '0.0000',
|
|
`f` float DEFAULT '0',
|
|
`total` bigint(20) unsigned DEFAULT NULL,
|
|
`y` year(4) DEFAULT NULL,
|
|
`t` date DEFAULT NULL
|
|
) ENGINE=ndbcluster DEFAULT CHARSET=latin1
|
|
STOP SLAVE;
|
|
RESET SLAVE;
|
|
RESET MASTER;
|
|
START SLAVE;
|
|
--- Populate t1 with data ---
|
|
--- Select from t1 on master ---
|
|
select *
|
|
from t1
|
|
order by id;
|
|
id b1 vc bc d f total y t
|
|
2 1 Testing MySQL databases is a coo Must make it bug free for the customer 654321.4321 15.21 0 1965 1965-11-14
|
|
4 1 Testing MySQL databases is a coo Must make it bug free for the customer 654321.4321 15.21 0 1965 1985-11-14
|
|
42 1 Testing MySQL databases is a coo Must make it bug free for the customer 654321.4321 15.21 0 1965 1905-11-14
|
|
142 1 Testing MySQL databases is a coo Must make it bug free for the customer 654321.4321 15.21 0 1965 1995-11-14
|
|
412 1 Testing MySQL databases is a coo Must make it bug free for the customer 654321.4321 15.21 0 1965 2005-11-14
|
|
--- Select from t1 on slave ---
|
|
select *
|
|
from t1
|
|
order by id;
|
|
id b1 vc bc d f total y t
|
|
2 1 Testing MySQL databases is a coo Must make it bug free for the customer 654321.4321 15.21 0 1965 1965-11-14
|
|
4 1 Testing MySQL databases is a coo Must make it bug free for the customer 654321.4321 15.21 0 1965 1985-11-14
|
|
42 1 Testing MySQL databases is a coo Must make it bug free for the customer 654321.4321 15.21 0 1965 1905-11-14
|
|
142 1 Testing MySQL databases is a coo Must make it bug free for the customer 654321.4321 15.21 0 1965 1995-11-14
|
|
412 1 Testing MySQL databases is a coo Must make it bug free for the customer 654321.4321 15.21 0 1965 2005-11-14
|
|
--- Perform basic operation on master ---
|
|
--- and ensure replicated correctly ---
|
|
--- Update t1 on master --
|
|
UPDATE t1 SET b1 = 0, bc='updated', t="2006-02-22"
|
|
WHERE id < 100
|
|
ORDER BY id;
|
|
--- Check the update on master ---
|
|
SELECT *
|
|
FROM t1
|
|
WHERE id < 100
|
|
ORDER BY id;
|
|
id b1 vc bc d f total y t
|
|
2 0 Testing MySQL databases is a coo updated 654321.4321 15.21 0 1965 2006-02-22
|
|
4 0 Testing MySQL databases is a coo updated 654321.4321 15.21 0 1965 2006-02-22
|
|
42 0 Testing MySQL databases is a coo updated 654321.4321 15.21 0 1965 2006-02-22
|
|
--- Check Update on slave ---
|
|
SELECT *
|
|
FROM t1
|
|
WHERE id < 100
|
|
ORDER BY id;
|
|
id b1 vc bc d f total y t
|
|
2 0 Testing MySQL databases is a coo updated 654321.4321 15.21 0 1965 2006-02-22
|
|
4 0 Testing MySQL databases is a coo updated 654321.4321 15.21 0 1965 2006-02-22
|
|
42 0 Testing MySQL databases is a coo updated 654321.4321 15.21 0 1965 2006-02-22
|
|
--- Remove a record from t1 on master ---
|
|
DELETE FROM t1 WHERE id = 412;
|
|
--- Show current count on master for t1 ---
|
|
SELECT COUNT(*) FROM t1;
|
|
COUNT(*)
|
|
4
|
|
--- Show current count on slave for t1 ---
|
|
SELECT COUNT(*) FROM t1;
|
|
COUNT(*)
|
|
4
|
|
TRUNCATE TABLE t1;
|
|
--- Check that replication works when slave has more columns than master
|
|
ALTER TABLE t1 ADD PRIMARY KEY(id,total);
|
|
ALTER TABLE t1 MODIFY vc TEXT;
|
|
INSERT INTO t1 VALUES(3,1,'Testing MySQL databases is a cool ',
|
|
'Must make it bug free for the customer',
|
|
654321.4321,15.21,0,1965,"1905-11-14");
|
|
INSERT INTO t1 VALUES(20,1,'Testing MySQL databases is a cool ',
|
|
'Must make it bug free for the customer',
|
|
654321.4321,15.21,0,1965,"1965-11-14");
|
|
INSERT INTO t1 VALUES(50,1,'Testing MySQL databases is a cool ',
|
|
'Must make it bug free for the customer',
|
|
654321.4321,15.21,0,1965,"1985-11-14");
|
|
--- Add columns on slave ---
|
|
ALTER TABLE t1 ADD (u int, v char(16) default 'default');
|
|
UPDATE t1 SET u=7 WHERE id < 50;
|
|
UPDATE t1 SET v='explicit' WHERE id >10;
|
|
--- Show changed table on slave ---
|
|
SHOW CREATE TABLE t1;
|
|
Table Create Table
|
|
t1 CREATE TABLE `t1` (
|
|
`id` mediumint(9) NOT NULL,
|
|
`b1` int(11) DEFAULT NULL,
|
|
`vc` text,
|
|
`bc` char(255) DEFAULT NULL,
|
|
`d` decimal(10,4) DEFAULT '0.0000',
|
|
`f` float DEFAULT '0',
|
|
`total` bigint(20) unsigned NOT NULL DEFAULT '0',
|
|
`y` year(4) DEFAULT NULL,
|
|
`t` date DEFAULT NULL,
|
|
`u` int(11) DEFAULT NULL,
|
|
`v` char(16) DEFAULT 'default',
|
|
PRIMARY KEY (`id`,`total`)
|
|
) ENGINE=ndbcluster DEFAULT CHARSET=latin1
|
|
SELECT *
|
|
FROM t1
|
|
ORDER BY id;
|
|
id b1 vc bc d f total y t u v
|
|
3 1 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0 1965 1905-11-14 7 default
|
|
20 1 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0 1965 1965-11-14 7 explicit
|
|
50 1 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0 1965 1985-11-14 NULL explicit
|
|
STOP SLAVE;
|
|
RESET SLAVE;
|
|
RESET MASTER;
|
|
START SLAVE;
|
|
--- Populate t1 with data ---
|
|
--- Select from t1 on master ---
|
|
select *
|
|
from t1
|
|
order by id;
|
|
id b1 vc bc d f total y t
|
|
2 1 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0 1965 1965-11-14
|
|
3 1 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0 1965 1905-11-14
|
|
4 1 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0 1965 1985-11-14
|
|
20 1 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0 1965 1965-11-14
|
|
42 1 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0 1965 1905-11-14
|
|
50 1 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0 1965 1985-11-14
|
|
142 1 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0 1965 1995-11-14
|
|
412 1 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0 1965 2005-11-14
|
|
--- Select from t1 on slave ---
|
|
select *
|
|
from t1
|
|
order by id;
|
|
id b1 vc bc d f total y t u v
|
|
2 1 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0 1965 1965-11-14 NULL NULL
|
|
3 1 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0 1965 1905-11-14 7 default
|
|
4 1 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0 1965 1985-11-14 NULL NULL
|
|
20 1 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0 1965 1965-11-14 7 explicit
|
|
42 1 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0 1965 1905-11-14 NULL NULL
|
|
50 1 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0 1965 1985-11-14 NULL explicit
|
|
142 1 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0 1965 1995-11-14 NULL NULL
|
|
412 1 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0 1965 2005-11-14 NULL NULL
|
|
--- Perform basic operation on master ---
|
|
--- and ensure replicated correctly ---
|
|
--- Update t1 on master --
|
|
UPDATE t1 SET b1 = 0, bc='updated', t="2006-02-22"
|
|
WHERE id < 100
|
|
ORDER BY id;
|
|
--- Check the update on master ---
|
|
SELECT *
|
|
FROM t1
|
|
WHERE id < 100
|
|
ORDER BY id;
|
|
id b1 vc bc d f total y t
|
|
2 0 Testing MySQL databases is a cool updated 654321.4321 15.21 0 1965 2006-02-22
|
|
3 0 Testing MySQL databases is a cool updated 654321.4321 15.21 0 1965 2006-02-22
|
|
4 0 Testing MySQL databases is a cool updated 654321.4321 15.21 0 1965 2006-02-22
|
|
20 0 Testing MySQL databases is a cool updated 654321.4321 15.21 0 1965 2006-02-22
|
|
42 0 Testing MySQL databases is a cool updated 654321.4321 15.21 0 1965 2006-02-22
|
|
50 0 Testing MySQL databases is a cool updated 654321.4321 15.21 0 1965 2006-02-22
|
|
--- Check Update on slave ---
|
|
SELECT *
|
|
FROM t1
|
|
WHERE id < 100
|
|
ORDER BY id;
|
|
id b1 vc bc d f total y t u v
|
|
2 0 Testing MySQL databases is a cool updated 654321.4321 15.21 0 1965 2006-02-22 NULL NULL
|
|
3 0 Testing MySQL databases is a cool updated 654321.4321 15.21 0 1965 2006-02-22 7 default
|
|
4 0 Testing MySQL databases is a cool updated 654321.4321 15.21 0 1965 2006-02-22 NULL NULL
|
|
20 0 Testing MySQL databases is a cool updated 654321.4321 15.21 0 1965 2006-02-22 7 explicit
|
|
42 0 Testing MySQL databases is a cool updated 654321.4321 15.21 0 1965 2006-02-22 NULL NULL
|
|
50 0 Testing MySQL databases is a cool updated 654321.4321 15.21 0 1965 2006-02-22 NULL explicit
|
|
--- Remove a record from t1 on master ---
|
|
DELETE FROM t1 WHERE id = 412;
|
|
--- Show current count on master for t1 ---
|
|
SELECT COUNT(*) FROM t1;
|
|
COUNT(*)
|
|
7
|
|
--- Show current count on slave for t1 ---
|
|
SELECT COUNT(*) FROM t1;
|
|
COUNT(*)
|
|
7
|
|
TRUNCATE TABLE t1;
|
|
TRUNCATE TABLE t1;
|
|
--- Check that replication works when master has more columns than slave
|
|
--- Remove columns on slave ---
|
|
ALTER TABLE t1 DROP COLUMN v;
|
|
ALTER TABLE t1 DROP COLUMN u;
|
|
ALTER TABLE t1 DROP COLUMN t;
|
|
ALTER TABLE t1 DROP COLUMN y;
|
|
--- Show changed table on slave ---
|
|
SHOW CREATE TABLE t1;
|
|
Table Create Table
|
|
t1 CREATE TABLE `t1` (
|
|
`id` mediumint(9) NOT NULL,
|
|
`b1` int(11) DEFAULT NULL,
|
|
`vc` text,
|
|
`bc` char(255) DEFAULT NULL,
|
|
`d` decimal(10,4) DEFAULT '0.0000',
|
|
`f` float DEFAULT '0',
|
|
`total` bigint(20) unsigned NOT NULL DEFAULT '0',
|
|
PRIMARY KEY (`id`,`total`)
|
|
) ENGINE=ndbcluster DEFAULT CHARSET=latin1
|
|
STOP SLAVE;
|
|
RESET SLAVE;
|
|
RESET MASTER;
|
|
START SLAVE;
|
|
--- Populate t1 with data ---
|
|
--- Select from t1 on master ---
|
|
select *
|
|
from t1
|
|
order by id;
|
|
id b1 vc bc d f total y t
|
|
2 1 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0 1965 1965-11-14
|
|
4 1 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0 1965 1985-11-14
|
|
42 1 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0 1965 1905-11-14
|
|
142 1 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0 1965 1995-11-14
|
|
412 1 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0 1965 2005-11-14
|
|
--- Select from t1 on slave ---
|
|
select *
|
|
from t1
|
|
order by id;
|
|
id b1 vc bc d f total
|
|
2 1 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0
|
|
4 1 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0
|
|
42 1 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0
|
|
142 1 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0
|
|
412 1 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0
|
|
--- Perform basic operation on master ---
|
|
--- and ensure replicated correctly ---
|
|
--- Update t1 on master --
|
|
UPDATE t1 SET b1 = 0, bc='updated', t="2006-02-22"
|
|
WHERE id < 100
|
|
ORDER BY id;
|
|
--- Check the update on master ---
|
|
SELECT *
|
|
FROM t1
|
|
WHERE id < 100
|
|
ORDER BY id;
|
|
id b1 vc bc d f total y t
|
|
2 0 Testing MySQL databases is a cool updated 654321.4321 15.21 0 1965 2006-02-22
|
|
4 0 Testing MySQL databases is a cool updated 654321.4321 15.21 0 1965 2006-02-22
|
|
42 0 Testing MySQL databases is a cool updated 654321.4321 15.21 0 1965 2006-02-22
|
|
--- Check Update on slave ---
|
|
SELECT *
|
|
FROM t1
|
|
WHERE id < 100
|
|
ORDER BY id;
|
|
id b1 vc bc d f total
|
|
2 0 Testing MySQL databases is a cool updated 654321.4321 15.21 0
|
|
4 0 Testing MySQL databases is a cool updated 654321.4321 15.21 0
|
|
42 0 Testing MySQL databases is a cool updated 654321.4321 15.21 0
|
|
--- Remove a record from t1 on master ---
|
|
DELETE FROM t1 WHERE id = 412;
|
|
--- Show current count on master for t1 ---
|
|
SELECT COUNT(*) FROM t1;
|
|
COUNT(*)
|
|
4
|
|
--- Show current count on slave for t1 ---
|
|
SELECT COUNT(*) FROM t1;
|
|
COUNT(*)
|
|
4
|
|
TRUNCATE TABLE t1;
|
|
TRUNCATE TABLE t1;
|
|
--- Do Cleanup --
|
|
DROP TABLE IF EXISTS t1;
|