1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166
|
include/master-slave.inc
[connection master]
set @my_time_zone= @@global.time_zone;
set timestamp=100000000;
create table t1 (t timestamp, n int not null auto_increment, PRIMARY KEY(n));
create table t2 (t char(32), n int not null auto_increment, PRIMARY KEY(n));
connection slave;
select @@time_zone;
@@time_zone
Japan
connection master;
select @@time_zone;
@@time_zone
Europe/Moscow
insert into t1 values ('20050101000000', NULL), ('20050611093902',NULL);
insert into t1 values ('20040101000000',NULL), ('20040611093902',NULL);
SELECT * FROM t1 ORDER BY n;
t n
2005-01-01 00:00:00 1
2005-06-11 09:39:02 2
2004-01-01 00:00:00 3
2004-06-11 09:39:02 4
connection slave;
SELECT * FROM t1 ORDER BY n;
t n
2005-01-01 06:00:00 1
2005-06-11 14:39:02 2
2004-01-01 06:00:00 3
2004-06-11 14:39:02 4
connection master;
delete from t1;
set time_zone='Europe/Moscow';
insert into t1 values ('20040101000000',NULL), ('20040611093902',NULL);
SELECT * FROM t1 ORDER BY n;
t n
2004-01-01 00:00:00 5
2004-06-11 09:39:02 6
connection slave;
set time_zone='Europe/Moscow';
SELECT * FROM t1 ORDER BY n;
t n
2004-01-01 00:00:00 5
2004-06-11 09:39:02 6
connection master;
connection master;
delete from t1;
set time_zone='UTC';
load data infile '../../std_data/rpl_timezone2.dat' ignore into table t1;
Warnings:
Warning 1265 Data truncated for column 't' at row 1
Warning 1261 Row 1 doesn't contain data for all columns
Warning 1265 Data truncated for column 't' at row 2
Warning 1261 Row 2 doesn't contain data for all columns
SELECT * FROM t1 ORDER BY n;
t n
0000-00-00 00:00:00 7
0000-00-00 00:00:00 8
connection slave;
set time_zone='UTC';
SELECT * FROM t1 ORDER BY n;
t n
0000-00-00 00:00:00 7
0000-00-00 00:00:00 8
set time_zone='Europe/Moscow';
connection master;
set time_zone='Europe/Moscow';
delete from t1;
insert into t1 values ('20040101000000',NULL), ('20040611093902',NULL);
set time_zone='MET';
insert into t2 (select * from t1);
SELECT * FROM t1 ORDER BY n;
t n
2003-12-31 22:00:00 9
2004-06-11 07:39:02 10
connection slave;
SELECT * FROM t2 ORDER BY n;
t n
2003-12-31 22:00:00 9
2004-06-11 07:39:02 10
connection master;
delete from t2;
set timestamp=1000072000;
insert into t2 values (current_timestamp,NULL), (current_date,NULL), (current_time,NULL);
connection slave;
SELECT * FROM t2 ORDER BY n;
t n
2001-09-09 23:46:40 11
2001-09-09 12
23:46:40 13
connection master;
delete from t2;
insert into t2 values (from_unixtime(1000000000),NULL),
(unix_timestamp('2001-09-09 03:46:40'),NULL);
SELECT * FROM t2 ORDER BY n;
t n
2001-09-09 03:46:40 14
1000000000 15
connection slave;
SELECT * FROM t2 ORDER BY n;
t n
2001-09-09 03:46:40 14
1000000000 15
connection master;
set global time_zone='MET';
delete from t2;
set time_zone='UTC';
insert into t2 values(convert_tz('2004-01-01 00:00:00','MET',@@time_zone),NULL);
insert into t2 values(convert_tz('2005-01-01 00:00:00','MET','Japan'),NULL);
SELECT * FROM t2 ORDER BY n;
t n
2003-12-31 23:00:00 16
2005-01-01 08:00:00 17
connection slave;
SELECT * FROM t2 ORDER BY n;
t n
2003-12-31 23:00:00 16
2005-01-01 08:00:00 17
connection master;
drop table t1, t2;
connection slave;
connection master;
set global time_zone= @my_time_zone;
End of 4.1 tests
connection master;
CREATE TABLE t1 (a INT, b TIMESTAMP);
INSERT INTO t1 VALUES (1, NOW());
SET @@session.time_zone='Japan';
UPDATE IGNORE t1 SET b= '1970-01-01 08:59:59' WHERE a= 1;
SELECT * FROM t1 ORDER BY a;
a b
1 0000-00-00 00:00:00
connection slave;
SET @@session.time_zone='Japan';
SELECT * FROM t1 ORDER BY a;
a b
1 0000-00-00 00:00:00
SET @@session.time_zone = default;
connection master;
DROP TABLE t1;
SET @@session.time_zone = default;
connection slave;
include/stop_slave.inc
connection master;
reset master;
CREATE TABLE t1 (date timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP, a int(11) default NULL);
SET @@session.time_zone='+01:00';
insert into t1 values('2008-12-23 19:39:39',1);
connection master1;
SET @@session.time_zone='+02:00';
insert delayed into t1 values ('2008-12-23 19:39:39',2);
flush table t1;
flush logs;
select * from t1;
date a
2008-12-23 20:39:39 1
2008-12-23 19:39:39 2
DROP TABLE t1;
connection master1;
select * from t1 order by a;
date a
2008-12-23 20:39:39 1
2008-12-23 19:39:39 2
DROP TABLE t1;
SET @@session.time_zone = default;
include/rpl_end.inc
End of 5.0 tests
|