~ubuntu-branches/ubuntu/precise/mysql-5.1/precise

« back to all changes in this revision

Viewing changes to mysql-test/suite/engines/funcs/t/rpl_do_grant.test

  • Committer: Bazaar Package Importer
  • Author(s): Norbert Tretkowski
  • Date: 2010-05-11 18:47:32 UTC
  • mto: (2.1.2 sid) (1.2.1 upstream)
  • mto: This revision was merged to the branch mainline in revision 4.
  • Revision ID: james.westby@ubuntu.com-20100511184732-jhn055kfhxze24kt
Tags: upstream-5.1.46
ImportĀ upstreamĀ versionĀ 5.1.46

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
# Works in statement-based and row-based binlogging.
 
2
# Test that GRANT and other user management commands are replicated to the slave
 
3
 
 
4
-- source include/master-slave.inc
 
5
 
 
6
# do not be influenced by other tests.
 
7
connection master;
 
8
delete from mysql.user where user=_binary'rpl_do_grant';
 
9
delete from mysql.db where user=_binary'rpl_do_grant';
 
10
flush privileges;
 
11
save_master_pos;
 
12
connection slave;
 
13
sync_with_master;
 
14
# if these DELETE did nothing on the master, we need to do them manually on the
 
15
# slave.
 
16
delete from mysql.user where user=_binary'rpl_ignore_grant';
 
17
delete from mysql.db where user=_binary'rpl_ignore_grant';
 
18
flush privileges;
 
19
 
 
20
# test replication of GRANT
 
21
connection master;
 
22
grant select on *.* to rpl_do_grant@localhost;
 
23
grant drop on test.* to rpl_do_grant@localhost;
 
24
save_master_pos;
 
25
connection slave;
 
26
sync_with_master;
 
27
show grants for rpl_do_grant@localhost;
 
28
 
 
29
# test replication of SET PASSWORD
 
30
connection master;
 
31
set password for rpl_do_grant@localhost=password("does it work?");
 
32
save_master_pos;
 
33
connection slave;
 
34
sync_with_master;
 
35
select password<>_binary'' from mysql.user where user=_binary'rpl_do_grant';
 
36
 
 
37
# clear what we have done, to not influence other tests.
 
38
connection master;
 
39
delete from mysql.user where user=_binary'rpl_do_grant';
 
40
delete from mysql.db where user=_binary'rpl_do_grant';
 
41
flush privileges;
 
42
sync_slave_with_master;
 
43
# The mysql database is not replicated, so we have to do the deletes
 
44
# manually on the slave as well. 
 
45
delete from mysql.user where user=_binary'rpl_do_grant';
 
46
delete from mysql.db where user=_binary'rpl_do_grant';
 
47
flush privileges;
 
48
 
 
49
# End of 4.1 tests
 
50
 
 
51
connection master;
 
52
--error 1141
 
53
show grants for rpl_do_grant@localhost;
 
54
connection slave;
 
55
--error 1141
 
56
show grants for rpl_do_grant@localhost;
 
57
 
 
58
connection master;
 
59
create user rpl_do_grant@localhost;
 
60
show grants for rpl_do_grant@localhost;
 
61
--error 1141
 
62
show grants for rpl_do_grant2@localhost;
 
63
sync_slave_with_master;
 
64
show grants for rpl_do_grant@localhost;
 
65
--error 1141
 
66
show grants for rpl_do_grant2@localhost;
 
67
 
 
68
connection master;
 
69
rename user rpl_do_grant@localhost to rpl_do_grant2@localhost;
 
70
show grants for rpl_do_grant2@localhost;
 
71
sync_slave_with_master;
 
72
show grants for rpl_do_grant2@localhost;
 
73
 
 
74
connection master;
 
75
grant DELETE,INSERT on mysqltest1.* to rpl_do_grant2@localhost;
 
76
show grants for rpl_do_grant2@localhost;
 
77
sync_slave_with_master;
 
78
show grants for rpl_do_grant2@localhost;
 
79
 
 
80
connection master;
 
81
revoke DELETE on mysqltest1.* from rpl_do_grant2@localhost;
 
82
show grants for rpl_do_grant2@localhost;
 
83
sync_slave_with_master;
 
84
show grants for rpl_do_grant2@localhost;
 
85
 
 
86
connection master;
 
87
revoke all privileges, grant option from rpl_do_grant2@localhost;
 
88
show grants for rpl_do_grant2@localhost;
 
89
sync_slave_with_master;
 
90
show grants for rpl_do_grant2@localhost;
 
91
 
 
92
connection master;
 
93
drop user rpl_do_grant2@localhost;
 
94
--error 1141
 
95
show grants for rpl_do_grant2@localhost;
 
96
sync_slave_with_master;
 
97
--error 1141
 
98
show grants for rpl_do_grant2@localhost;