79 lines
1.8 KiB
Plaintext
79 lines
1.8 KiB
Plaintext
include/master-slave.inc
|
|
Warnings:
|
|
Note #### Sending passwords in plain text without SSL/TLS is extremely insecure.
|
|
Note #### Storing MySQL user name or password information in the master info repository is not secure and is therefore not recommended. Please consider using the USER and PASSWORD connection options for START SLAVE; see the 'START SLAVE Syntax' in the MySQL Manual for more information.
|
|
[connection master]
|
|
CREATE TABLE test.t1 (a INT, PRIMARY KEY(a));
|
|
INSERT INTO test.t1 VALUES (1),(2),(3),(4);
|
|
CREATE TABLE test.t2 (a INT, PRIMARY KEY(a));
|
|
CREATE PROCEDURE test.p1 (arg1 CHAR(1))
|
|
BEGIN
|
|
DECLARE b, c INT;
|
|
IF arg1 = 'a' THEN
|
|
BEGIN
|
|
DECLARE cur1 CURSOR FOR SELECT A FROM test.t1 WHERE a % 2;
|
|
DECLARE continue handler for not found set b = 1;
|
|
SET b = 0;
|
|
OPEN cur1;
|
|
c1_repeat: REPEAT
|
|
FETCH cur1 INTO c;
|
|
IF (b = 1) THEN
|
|
LEAVE c1_repeat;
|
|
END IF;
|
|
INSERT INTO test.t2 VALUES (c);
|
|
UNTIL b = 1
|
|
END REPEAT;
|
|
CLOSE cur1;
|
|
END;
|
|
END IF;
|
|
IF arg1 = 'b' THEN
|
|
BEGIN
|
|
DECLARE cur2 CURSOR FOR SELECT a FROM test.t1 WHERE NOT a % 2;
|
|
DECLARE continue handler for not found set b = 1;
|
|
SET b = 0;
|
|
OPEN cur2;
|
|
c2_repeat: REPEAT
|
|
FETCH cur2 INTO c;
|
|
IF (b = 1) THEN
|
|
LEAVE c2_repeat;
|
|
END IF;
|
|
INSERT INTO test.t2 VALUES (c);
|
|
UNTIL b = 1
|
|
END REPEAT;
|
|
CLOSE cur2;
|
|
END;
|
|
END IF;
|
|
END|
|
|
CALL test.p1('a');
|
|
SELECT * FROM test.t2 ORDER BY a;
|
|
a
|
|
1
|
|
3
|
|
include/sync_slave_sql_with_master.inc
|
|
SELECT * FROM test.t2 ORDER BY a;
|
|
a
|
|
1
|
|
3
|
|
truncate test.t2;
|
|
call test.p1('b');
|
|
select * from test.t2 ORDER BY a;
|
|
a
|
|
2
|
|
4
|
|
include/sync_slave_sql_with_master.inc
|
|
SELECT * FROM test.t2 ORDER BY a;
|
|
a
|
|
2
|
|
4
|
|
truncate test.t2;
|
|
SELECT * FROM test.t2 ORDER BY a;
|
|
a
|
|
include/sync_slave_sql_with_master.inc
|
|
SELECT * FROM test.t2 ORDER BY a;
|
|
a
|
|
DROP PROCEDURE test.p1;
|
|
DROP TABLE test.t1;
|
|
DROP TABLE test.t2;
|
|
include/sync_slave_sql_with_master.inc
|
|
include/rpl_end.inc
|