1
# Test case for BUG #11733
2
-- source include/master-slave.inc
3
-- source include/have_innodb.inc
5
# Create a test and replicate it to slave
8
sync_slave_with_master;
10
# Setting the master readonly :
11
# - the variable @@readonly is not replicated on the slave
13
connect (master2,127.0.0.1,test,,test,$MASTER_MYPORT,);
14
connect (slave2,127.0.0.1,test,,test,$SLAVE_MYPORT,);
18
create table t1(a int) engine=InnoDB;
19
create table t2(a int) engine=MyISAM;
20
insert into t1 values(1001);
21
insert into t2 values(2001);
24
set global read_only=1;
31
sync_slave_with_master;
36
# - replication of transactions
38
set global read_only=0;
42
insert into t1 values(1002);
43
insert into t2 values(2002);
47
insert into t1 values(1003);
48
insert into t2 values(2003);
51
set global read_only=1;
54
## works even with read_only=1, because master1 is root
58
--error ER_OPTION_PREVENTS_STATEMENT
62
set global read_only=0;
65
insert into t1 values(1004);
66
insert into t2 values(2004);
71
sync_slave_with_master;
75
# Setting the slave readonly : replication will pass
78
set global read_only=1;
82
# Make sure the replicated table is also transactional
84
# Make sure the replicated table is not transactional
88
insert into t1 values(1005);
89
insert into t2 values(2005);
93
sync_slave_with_master;
98
# Non root user can not write on the slave
100
--error ER_OPTION_PREVENTS_STATEMENT
101
insert into t1 values(1006);
102
--error ER_OPTION_PREVENTS_STATEMENT
103
insert into t2 values(2006);
110
sync_slave_with_master;
111
set global read_only=0;