connect con0,localhost,root,,; connection con0; select hex(@a); hex(@a) NULL connect con1,localhost,user_1,,; connection con1; select hex(@a); hex(@a) 610063 connection con0; set global init_connect="set @a=2;set @b=3"; connect con2,localhost,user_1,,; connection con2; select @a, @b; @a @b 2 3 connection con0; set GLOBAL init_connect=DEFAULT; connect con3,localhost,user_1,,; connection con3; select @a; @a NULL connection con0; set global init_connect="drop table if exists t1; create table t1(a char(10));\ insert into t1 values ('\0');insert into t1 values('abc')"; connect con4,localhost,user_1,,; connection con4; select hex(a) from t1; hex(a) 00 616263 connection con0; set GLOBAL init_connect="adsfsdfsdfs"; connect con5,localhost,user_1,,; connection con5; select @a; ERROR 08S01: Aborted connection to db: 'test' user: 'user_1' host: 'localhost' (init_connect command failed) select @a; Got one of the listed errors connection con0; drop table t1; disconnect con1; disconnect con2; disconnect con3; disconnect con4; disconnect con5; End of 4.1 tests create table t1 (x int); insert into t1 values (3), (5), (7); create table t2 (y int); create user mysqltest1@localhost; grant all privileges on test.* to mysqltest1@localhost; set global init_connect="create procedure p1() select * from t1"; connect con1,localhost,mysqltest1,,; connection con1; call p1(); x 3 5 7 drop procedure p1; connection con0; disconnect con1; set global init_connect="create procedure p1(x int)\ begin\ select count(*) from t1;\ select * from t1;\ set @x = x; end"; connect con1,localhost,mysqltest1,,; connection con1; call p1(42); count(*) 3 x 3 5 7 select @x; @x 42 connection con0; disconnect con1; set global init_connect="call p1(4711)"; connect con1,localhost,mysqltest1,,; connection con1; select @x; @x 4711 connection con0; disconnect con1; set global init_connect="drop procedure if exists p1"; connect con1,localhost,mysqltest1,,; connection con1; call p1(); ERROR 42000: PROCEDURE test.p1 does not exist connection con0; disconnect con1; create procedure p1(out sum int) begin declare n int default 0; declare c cursor for select * from t1; declare exit handler for not found begin close c; set sum = n; end; open c; loop begin declare x int; fetch c into x; if x > 3 then set n = n + x; end if; end; end loop; end| set global init_connect="call p1(@sum)"; connect con1,localhost,mysqltest1,,; connection con1; select @sum; @sum 12 connection con0; disconnect con1; drop procedure p1; create procedure p1(tbl char(10), v int) begin set @s = concat('insert into ', tbl, ' values (?)'); set @v = v; prepare stmt1 from @s; execute stmt1 using @v; deallocate prepare stmt1; end| set global init_connect="call p1('t1', 11)"; connect con1,localhost,mysqltest1,,; connection con1; select * from t1; x 3 5 7 11 connection con0; disconnect con1; drop procedure p1; create function f1() returns int begin declare n int; select count(*) into n from t1; return n; end| set global init_connect="set @x = f1()"; connect con1,localhost,mysqltest1,,; connection con1; select @x; @x 4 connection con0; disconnect con1; set global init_connect="create view v1 as select f1()"; connect con1,localhost,mysqltest1,,; connection con1; select * from v1; f1() 4 connection con0; disconnect con1; set global init_connect="drop view v1"; connect con1,localhost,mysqltest1,,; connection con1; select * from v1; ERROR 42S02: Table 'test.v1' doesn't exist connection con0; disconnect con1; drop function f1; create trigger trg1 after insert on t2 for each row insert into t1 values (new.y); set global init_connect="insert into t2 values (13), (17), (19)"; connect con1,localhost,mysqltest1,,; connection con1; select * from t1; x 3 5 7 11 13 17 19 connection default; disconnect con0; disconnect con1; drop trigger trg1; set global init_connect="set @a='a\\0c'"; revoke all privileges, grant option from mysqltest1@localhost; drop user mysqltest1@localhost; drop table t1, t2;