mirror of
https://github.com/MariaDB/server.git
synced 2025-01-18 13:02:28 +01:00
3435e8a515
innodb_autoinc_lock_mode = 2 innodb_buffer_pool_dump_at_shutdown = ON innodb_buffer_pool_dump_pct = 25 innodb_buffer_pool_load_at_startup = ON innodb_checksum_algorithm = CRC32 innodb_file_format = Barracuda innodb_large_prefix = ON innodb_log_compressed_pages = ON innodb_purge_threads = 4 innodb_strict_mode = ON binlog_annotate_row_events = ON binlog_format = MIXED binlog-row-event-max-size = 8192 group_concat_max_len = 1M lock_wait_timeout = 86400 log_slow_admin_statements = ON log_slow_slave_statements = ON log_warnings = 2 max_allowed_packet = 16M replicate_annotate_row_events = ON slave_net_timeout = 60 sync_binlog = 1 aria_recover = BACKUP,QUICK myisam_recover_options = BACKUP,QUICK
295 lines
11 KiB
Text
295 lines
11 KiB
Text
set binlog_format=statement;
|
|
reset master;
|
|
create database testing_1;
|
|
use testing_1;
|
|
create table t1 (a int);
|
|
create function sf1 (a int) returns int return a+1;
|
|
create trigger tr1 before insert on t1 for each row insert into t2 values (2*new.a);
|
|
create procedure sp1 (a int) insert into t1 values(a);
|
|
drop database testing_1;
|
|
include/show_binlog_events.inc
|
|
Log_name Pos Event_type Server_id End_log_pos Info
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # create database testing_1
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # use `testing_1`; create table t1 (a int)
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # use `testing_1`; CREATE DEFINER=`root`@`localhost` FUNCTION `sf1`(a int) RETURNS int(11)
|
|
return a+1
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # use `testing_1`; CREATE DEFINER=`root`@`localhost` trigger tr1 before insert on t1 for each row insert into t2 values (2*new.a)
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # use `testing_1`; CREATE DEFINER=`root`@`localhost` PROCEDURE `sp1`(a int)
|
|
insert into t1 values(a)
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # drop database testing_1
|
|
use test;
|
|
reset master;
|
|
create temporary table tt1 (a int);
|
|
create table t1 (a int);
|
|
insert into t1 values (1);
|
|
drop database if exists mysqltest1;
|
|
insert into t1 values (1);
|
|
drop table tt1, t1;
|
|
include/show_binlog_events.inc
|
|
Log_name Pos Event_type Server_id End_log_pos Info
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # use `test`; create temporary table tt1 (a int)
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # use `test`; create table t1 (a int)
|
|
master-bin.000001 # Gtid # # BEGIN GTID #-#-#
|
|
master-bin.000001 # Query # # use `test`; insert into t1 values (1)
|
|
master-bin.000001 # Query # # COMMIT
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # drop database if exists mysqltest1
|
|
master-bin.000001 # Gtid # # BEGIN GTID #-#-#
|
|
master-bin.000001 # Query # # use `test`; insert into t1 values (1)
|
|
master-bin.000001 # Query # # COMMIT
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # use `test`; DROP TEMPORARY TABLE `tt1` /* generated by server */
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # use `test`; DROP TABLE `t1` /* generated by server */
|
|
FLUSH STATUS;
|
|
|
|
# 'DROP TABLE IF EXISTS <deleted tables>' is binlogged
|
|
# when 'DROP DATABASE' fails and at least one table is deleted
|
|
# from the database.
|
|
RESET MASTER;
|
|
CREATE DATABASE testing_1;
|
|
USE testing_1;
|
|
CREATE TABLE t1(c1 INT);
|
|
CREATE TABLE t2(c1 INT);
|
|
# Create a file in the database directory
|
|
SELECT 'hello' INTO OUTFILE 'fake_file.FAKE_FILE';
|
|
|
|
# 'DROP DATABASE' will fail if there is any other file in the the
|
|
# database directory
|
|
DROP DATABASE testing_1;
|
|
ERROR HY000: Error dropping database (can't rmdir './testing_1', errno: 39 "Directory not empty")
|
|
|
|
# Remove the fake file.
|
|
# Now we can drop the database.
|
|
DROP DATABASE testing_1;
|
|
#
|
|
# Bug#11765416 58381: FAILED DROP DATABASE CAN BREAK STATEMENT
|
|
# BASED REPLICATION
|
|
#
|
|
USE test;
|
|
DROP DATABASE IF EXISTS db1;
|
|
DROP TABLE IF EXISTS t3;
|
|
CREATE DATABASE db1;
|
|
CREATE TABLE db1.t1 (a INT);
|
|
CREATE TABLE db1.t2 (b INT, KEY(b)) engine=innodb;
|
|
CREATE TABLE t3 (a INT, KEY (a), FOREIGN KEY(a) REFERENCES db1.t2(b))
|
|
engine=innodb;
|
|
RESET MASTER;
|
|
DROP DATABASE db1;
|
|
ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails
|
|
SHOW TABLES FROM db1;
|
|
Tables_in_db1
|
|
t2
|
|
include/show_binlog_events.inc
|
|
Log_name Pos Event_type Server_id End_log_pos Info
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # use `db1`; DROP TABLE IF EXISTS `t1`
|
|
DROP TABLE t3;
|
|
DROP DATABASE db1;
|
|
set binlog_format=mixed;
|
|
reset master;
|
|
create database testing_1;
|
|
use testing_1;
|
|
create table t1 (a int);
|
|
create function sf1 (a int) returns int return a+1;
|
|
create trigger tr1 before insert on t1 for each row insert into t2 values (2*new.a);
|
|
create procedure sp1 (a int) insert into t1 values(a);
|
|
drop database testing_1;
|
|
include/show_binlog_events.inc
|
|
Log_name Pos Event_type Server_id End_log_pos Info
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # create database testing_1
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # use `testing_1`; create table t1 (a int)
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # use `testing_1`; CREATE DEFINER=`root`@`localhost` FUNCTION `sf1`(a int) RETURNS int(11)
|
|
return a+1
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # use `testing_1`; CREATE DEFINER=`root`@`localhost` trigger tr1 before insert on t1 for each row insert into t2 values (2*new.a)
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # use `testing_1`; CREATE DEFINER=`root`@`localhost` PROCEDURE `sp1`(a int)
|
|
insert into t1 values(a)
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # drop database testing_1
|
|
use test;
|
|
reset master;
|
|
create temporary table tt1 (a int);
|
|
create table t1 (a int);
|
|
insert into t1 values (1);
|
|
drop database if exists mysqltest1;
|
|
insert into t1 values (1);
|
|
drop table tt1, t1;
|
|
include/show_binlog_events.inc
|
|
Log_name Pos Event_type Server_id End_log_pos Info
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # use `test`; create temporary table tt1 (a int)
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # use `test`; create table t1 (a int)
|
|
master-bin.000001 # Gtid # # BEGIN GTID #-#-#
|
|
master-bin.000001 # Query # # use `test`; insert into t1 values (1)
|
|
master-bin.000001 # Query # # COMMIT
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # drop database if exists mysqltest1
|
|
master-bin.000001 # Gtid # # BEGIN GTID #-#-#
|
|
master-bin.000001 # Query # # use `test`; insert into t1 values (1)
|
|
master-bin.000001 # Query # # COMMIT
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # use `test`; DROP TEMPORARY TABLE `tt1` /* generated by server */
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # use `test`; DROP TABLE `t1` /* generated by server */
|
|
FLUSH STATUS;
|
|
|
|
# 'DROP TABLE IF EXISTS <deleted tables>' is binlogged
|
|
# when 'DROP DATABASE' fails and at least one table is deleted
|
|
# from the database.
|
|
RESET MASTER;
|
|
CREATE DATABASE testing_1;
|
|
USE testing_1;
|
|
CREATE TABLE t1(c1 INT);
|
|
CREATE TABLE t2(c1 INT);
|
|
# Create a file in the database directory
|
|
SELECT 'hello' INTO OUTFILE 'fake_file.FAKE_FILE';
|
|
|
|
# 'DROP DATABASE' will fail if there is any other file in the the
|
|
# database directory
|
|
DROP DATABASE testing_1;
|
|
ERROR HY000: Error dropping database (can't rmdir './testing_1', errno: 39 "Directory not empty")
|
|
|
|
# Remove the fake file.
|
|
# Now we can drop the database.
|
|
DROP DATABASE testing_1;
|
|
#
|
|
# Bug#11765416 58381: FAILED DROP DATABASE CAN BREAK STATEMENT
|
|
# BASED REPLICATION
|
|
#
|
|
USE test;
|
|
DROP DATABASE IF EXISTS db1;
|
|
DROP TABLE IF EXISTS t3;
|
|
CREATE DATABASE db1;
|
|
CREATE TABLE db1.t1 (a INT);
|
|
CREATE TABLE db1.t2 (b INT, KEY(b)) engine=innodb;
|
|
CREATE TABLE t3 (a INT, KEY (a), FOREIGN KEY(a) REFERENCES db1.t2(b))
|
|
engine=innodb;
|
|
RESET MASTER;
|
|
DROP DATABASE db1;
|
|
ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails
|
|
SHOW TABLES FROM db1;
|
|
Tables_in_db1
|
|
t2
|
|
include/show_binlog_events.inc
|
|
Log_name Pos Event_type Server_id End_log_pos Info
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # use `db1`; DROP TABLE IF EXISTS `t1`
|
|
DROP TABLE t3;
|
|
DROP DATABASE db1;
|
|
set binlog_format=row;
|
|
reset master;
|
|
create database testing_1;
|
|
use testing_1;
|
|
create table t1 (a int);
|
|
create function sf1 (a int) returns int return a+1;
|
|
create trigger tr1 before insert on t1 for each row insert into t2 values (2*new.a);
|
|
create procedure sp1 (a int) insert into t1 values(a);
|
|
drop database testing_1;
|
|
include/show_binlog_events.inc
|
|
Log_name Pos Event_type Server_id End_log_pos Info
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # create database testing_1
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # use `testing_1`; create table t1 (a int)
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # use `testing_1`; CREATE DEFINER=`root`@`localhost` FUNCTION `sf1`(a int) RETURNS int(11)
|
|
return a+1
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # use `testing_1`; CREATE DEFINER=`root`@`localhost` trigger tr1 before insert on t1 for each row insert into t2 values (2*new.a)
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # use `testing_1`; CREATE DEFINER=`root`@`localhost` PROCEDURE `sp1`(a int)
|
|
insert into t1 values(a)
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # drop database testing_1
|
|
use test;
|
|
reset master;
|
|
create temporary table tt1 (a int);
|
|
create table t1 (a int);
|
|
insert into t1 values (1);
|
|
drop database if exists mysqltest1;
|
|
insert into t1 values (1);
|
|
drop table tt1, t1;
|
|
include/show_binlog_events.inc
|
|
Log_name Pos Event_type Server_id End_log_pos Info
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # use `test`; create table t1 (a int)
|
|
master-bin.000001 # Gtid # # BEGIN GTID #-#-#
|
|
master-bin.000001 # Annotate_rows # # insert into t1 values (1)
|
|
master-bin.000001 # Table_map # # table_id: # (test.t1)
|
|
master-bin.000001 # Write_rows_v1 # # table_id: # flags: STMT_END_F
|
|
master-bin.000001 # Query # # COMMIT
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # drop database if exists mysqltest1
|
|
master-bin.000001 # Gtid # # BEGIN GTID #-#-#
|
|
master-bin.000001 # Annotate_rows # # insert into t1 values (1)
|
|
master-bin.000001 # Table_map # # table_id: # (test.t1)
|
|
master-bin.000001 # Write_rows_v1 # # table_id: # flags: STMT_END_F
|
|
master-bin.000001 # Query # # COMMIT
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # use `test`; DROP TABLE `t1` /* generated by server */
|
|
FLUSH STATUS;
|
|
|
|
# 'DROP TABLE IF EXISTS <deleted tables>' is binlogged
|
|
# when 'DROP DATABASE' fails and at least one table is deleted
|
|
# from the database.
|
|
RESET MASTER;
|
|
CREATE DATABASE testing_1;
|
|
USE testing_1;
|
|
CREATE TABLE t1(c1 INT);
|
|
CREATE TABLE t2(c1 INT);
|
|
# Create a file in the database directory
|
|
SELECT 'hello' INTO OUTFILE 'fake_file.FAKE_FILE';
|
|
|
|
# 'DROP DATABASE' will fail if there is any other file in the the
|
|
# database directory
|
|
DROP DATABASE testing_1;
|
|
ERROR HY000: Error dropping database (can't rmdir './testing_1', errno: 39 "Directory not empty")
|
|
|
|
# Remove the fake file.
|
|
# Now we can drop the database.
|
|
DROP DATABASE testing_1;
|
|
#
|
|
# Bug#11765416 58381: FAILED DROP DATABASE CAN BREAK STATEMENT
|
|
# BASED REPLICATION
|
|
#
|
|
USE test;
|
|
DROP DATABASE IF EXISTS db1;
|
|
DROP TABLE IF EXISTS t3;
|
|
CREATE DATABASE db1;
|
|
CREATE TABLE db1.t1 (a INT);
|
|
CREATE TABLE db1.t2 (b INT, KEY(b)) engine=innodb;
|
|
CREATE TABLE t3 (a INT, KEY (a), FOREIGN KEY(a) REFERENCES db1.t2(b))
|
|
engine=innodb;
|
|
RESET MASTER;
|
|
DROP DATABASE db1;
|
|
ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails
|
|
SHOW TABLES FROM db1;
|
|
Tables_in_db1
|
|
t2
|
|
include/show_binlog_events.inc
|
|
Log_name Pos Event_type Server_id End_log_pos Info
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # use `db1`; DROP TABLE IF EXISTS `t1`
|
|
DROP TABLE t3;
|
|
DROP DATABASE db1;
|
|
show databases;
|
|
Database
|
|
information_schema
|
|
mtr
|
|
mysql
|
|
performance_schema
|
|
test
|