rpl_misc_functions.test
上传用户:romrleung
上传日期:2022-05-23
资源大小:18897k
文件大小:1k
源码类别:

MySQL数据库

开发平台:

Visual C++

  1. #
  2. # Test of replicating some difficult functions
  3. #
  4. source include/master-slave.inc;
  5. create table t1(id int, i int, r1 int, r2 int, p varchar(100));
  6. insert into t1 values(1, connection_id(), 0, 0, "");
  7. # don't put rand and password in the same query, to see if they replicate
  8. # independently
  9. # Pure rand test
  10. insert into t1 values(2, 0, rand()*1000, rand()*1000, "");
  11. # change the rand suite on the master (we do this because otherwise password()
  12. # benefits from the fact that the above rand() is well replicated : 
  13. # it picks the same sequence element, which hides a possible bug in password() replication.
  14. set sql_log_bin=0;
  15. insert into t1 values(6, 0, rand(), rand(), "");
  16. delete from t1 where id=6;
  17. set sql_log_bin=1;
  18. # Pure password test
  19. insert into t1 values(3, 0, 0, 0, password('does_this_work?'));
  20. # "altogether now"
  21. insert into t1 values(4, connection_id(), rand()*1000, rand()*1000, password('does_this_still_work?'));
  22. select * into outfile 'rpl_misc_functions.outfile' from t1;
  23. sync_slave_with_master;
  24. create table t2 like t1; 
  25. # read the values from the master table
  26. load data local infile './var/master-data/test/rpl_misc_functions.outfile' into table t2;
  27. # compare them with the replica; the SELECT below should return no row
  28. select * from t1, t2 where (t1.id=t2.id) and not(t1.i=t2.i and t1.r1=t2.r1 and t1.r2=t2.r2 and t1.p=t2.p);
  29. stop slave;
  30. # End of 4.1 tests