mirror of
https://github.com/MariaDB/server.git
synced 2025-01-17 20:42:30 +01:00
9d616d572c
into temporary table and selecting the correct row with SQL
135 lines
4.5 KiB
Text
135 lines
4.5 KiB
Text
stop slave;
|
|
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
|
|
reset master;
|
|
reset slave;
|
|
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
|
|
start slave;
|
|
reset master;
|
|
SET @save_select_limit=@@session.sql_select_limit;
|
|
SET @@session.sql_select_limit=10, @@session.pseudo_thread_id=100;
|
|
ERROR 42000: Access denied; you need the SUPER privilege for this operation
|
|
SELECT @@session.sql_select_limit = @save_select_limit;
|
|
@@session.sql_select_limit = @save_select_limit
|
|
1
|
|
SET @@session.sql_select_limit=10, @@session.sql_log_bin=0;
|
|
ERROR 42000: Access denied; you need the SUPER privilege for this operation
|
|
SELECT @@session.sql_select_limit = @save_select_limit;
|
|
@@session.sql_select_limit = @save_select_limit
|
|
1
|
|
SET @@session.pseudo_thread_id=100;
|
|
SET @@session.pseudo_thread_id=connection_id();
|
|
SET @@session.sql_log_bin=0;
|
|
SET @@session.sql_log_bin=1;
|
|
drop table if exists t1,t2;
|
|
create table t1(f int);
|
|
create table t2(f int);
|
|
insert into t1 values (1),(2),(3),(4),(5),(6),(7),(8),(9),(10);
|
|
create temporary table t3(f int);
|
|
insert into t3 select * from t1 where f<6;
|
|
create temporary table t3(f int);
|
|
insert into t2 select count(*) from t3;
|
|
insert into t3 select * from t1 where f>=4;
|
|
drop temporary table t3;
|
|
insert into t2 select count(*) from t3;
|
|
drop temporary table t3;
|
|
select * from t2;
|
|
f
|
|
5
|
|
7
|
|
show binlog events;
|
|
Log_name Pos Event_type Server_id End_log_pos Info
|
|
master-bin.000001 # Format_desc 1 # Server ver: VERSION, Binlog ver: 4
|
|
master-bin.000001 # Query 1 # use `test`; drop table if exists t1,t2
|
|
master-bin.000001 # Query 1 # use `test`; create table t1(f int)
|
|
master-bin.000001 # Query 1 # use `test`; create table t2(f int)
|
|
master-bin.000001 # Query 1 # use `test`; insert into t1 values (1),(2),(3),(4),(5),(6),(7),(8),(9),(10)
|
|
master-bin.000001 # Query 1 # use `test`; create temporary table t3(f int)
|
|
master-bin.000001 # Query 1 # use `test`; insert into t3 select * from t1 where f<6
|
|
master-bin.000001 # Query 1 # use `test`; create temporary table t3(f int)
|
|
master-bin.000001 # Query 1 # use `test`; insert into t2 select count(*) from t3
|
|
master-bin.000001 # Query 1 # use `test`; insert into t3 select * from t1 where f>=4
|
|
master-bin.000001 # Query 1 # use `test`; drop temporary table t3
|
|
master-bin.000001 # Query 1 # use `test`; insert into t2 select count(*) from t3
|
|
master-bin.000001 # Query 1 # use `test`; drop temporary table t3
|
|
drop table t1, t2;
|
|
use test;
|
|
SET TIMESTAMP=1040323920;
|
|
create table t1(f int);
|
|
SET TIMESTAMP=1040323931;
|
|
create table t2(f int);
|
|
SET TIMESTAMP=1040323938;
|
|
insert into t1 values (1),(2),(3),(4),(5),(6),(7),(8),(9),(10);
|
|
SET TIMESTAMP=1040323945;
|
|
SET @@session.pseudo_thread_id=1;
|
|
create temporary table t3(f int);
|
|
SET TIMESTAMP=1040323952;
|
|
SET @@session.pseudo_thread_id=1;
|
|
insert into t3 select * from t1 where f<6;
|
|
SET TIMESTAMP=1040324145;
|
|
SET @@session.pseudo_thread_id=2;
|
|
create temporary table t3(f int);
|
|
SET TIMESTAMP=1040324186;
|
|
SET @@session.pseudo_thread_id=1;
|
|
insert into t2 select count(*) from t3;
|
|
SET TIMESTAMP=1040324200;
|
|
SET @@session.pseudo_thread_id=2;
|
|
insert into t3 select * from t1 where f>=4;
|
|
SET TIMESTAMP=1040324211;
|
|
SET @@session.pseudo_thread_id=1;
|
|
drop temporary table t3;
|
|
SET TIMESTAMP=1040324219;
|
|
SET @@session.pseudo_thread_id=2;
|
|
insert into t2 select count(*) from t3;
|
|
SET TIMESTAMP=1040324224;
|
|
SET @@session.pseudo_thread_id=2;
|
|
drop temporary table t3;
|
|
select * from t2;
|
|
f
|
|
5
|
|
7
|
|
drop table t1,t2;
|
|
create temporary table t3 (f int);
|
|
create temporary table t4 (f int);
|
|
create table t5 (f int);
|
|
drop table if exists t999;
|
|
create temporary table t999(
|
|
id int,
|
|
user char(255),
|
|
host char(255),
|
|
db char(255),
|
|
Command char(255),
|
|
time int,
|
|
State char(255),
|
|
info char(255)
|
|
);
|
|
LOAD DATA INFILE "./tmp/bl_dump_thread_id" into table t999;
|
|
drop table t999;
|
|
insert into t4 values (1);
|
|
kill `select id from information_schema.processlist where command='Binlog Dump'`;
|
|
insert into t5 select * from t4;
|
|
select * from t5 /* must be 1 after reconnection */;
|
|
f
|
|
1
|
|
drop temporary table t4;
|
|
drop table t5;
|
|
set @@session.pseudo_thread_id=100;
|
|
create temporary table t101 (id int);
|
|
create temporary table t102 (id int);
|
|
set @@session.pseudo_thread_id=200;
|
|
create temporary table t201 (id int);
|
|
create temporary table `t``201` (id int);
|
|
create temporary table `#sql_not_user_table202` (id int);
|
|
set @@session.pseudo_thread_id=300;
|
|
create temporary table t301 (id int);
|
|
create temporary table t302 (id int);
|
|
create temporary table `#sql_not_user_table303` (id int);
|
|
create table t1(f int);
|
|
insert into t1 values (1);
|
|
select * from t1 /* must be 1 */;
|
|
f
|
|
1
|
|
drop table t1;
|
|
select * from t1;
|
|
a
|
|
1
|
|
drop table t1;
|