# Test that GRANT is not replicated to the slave # when --replicate-wild-ignore-table=mysql.% # In BUG#980, this test would _randomly_ fail. --source include/not_group_replication_plugin.inc source include/master-slave.inc; # do not be influenced by other tests. connection master; delete from mysql.user where user=_binary'rpl_ignore_grant'; delete from mysql.db where user=_binary'rpl_ignore_grant'; flush privileges; save_master_pos; connection slave; sync_with_master; # as these DELETE were not replicated, we need to do them manually on the # slave. delete from mysql.user where user=_binary'rpl_ignore_grant'; delete from mysql.db where user=_binary'rpl_ignore_grant'; flush privileges; # test non-replication of GRANT connection master; create user rpl_ignore_grant@localhost; grant select on *.* to rpl_ignore_grant@localhost; grant drop on test.* to rpl_ignore_grant@localhost; show grants for rpl_ignore_grant@localhost; save_master_pos; connection slave; sync_with_master; # No such grant for user --error 1141 show grants for rpl_ignore_grant@localhost; # check it another way select count(*) from mysql.user where user=_binary'rpl_ignore_grant'; select count(*) from mysql.db where user=_binary'rpl_ignore_grant'; # test non-replication of SET PASSWORD # first force creation of the user on slave (because as the user does not exist # on slave, the SET PASSWORD may be replicated but silently do nothing; this is # not what we want; we want it to be not-replicated). create user rpl_ignore_grant@localhost; grant select on *.* to rpl_ignore_grant@localhost; connection master; set password for rpl_ignore_grant@localhost="does it work?"; save_master_pos; connection slave; sync_with_master; select authentication_string<>_binary'' from mysql.user where user=_binary'rpl_ignore_grant'; # clear what we have done, to not influence other tests. connection master; delete from mysql.user where user=_binary'rpl_ignore_grant'; delete from mysql.db where user=_binary'rpl_ignore_grant'; flush privileges; save_master_pos; connection slave; sync_with_master; delete from mysql.user where user=_binary'rpl_ignore_grant'; delete from mysql.db where user=_binary'rpl_ignore_grant'; flush privileges; # End of 4.1 tests --source include/rpl_end.inc