1FLUSH TABLES;
2CREATE TABLE articles (
3id INT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY,
4title VARCHAR(200),
5body TEXT,
6FULLTEXT (title,body)
7) ENGINE=InnoDB;
8DROP INDEX title ON articles;
9INSERT INTO articles (title,body) VALUES
10('MySQL Tutorial','DBMS stands for DataBase ...')  ,
11('How To Use MySQL Well','After you went through a ...'),
12('Optimizing MySQL','In this tutorial we will show ...'),
13('1001 MySQL Tricks','1. Never run mysqld as root. 2. ...'),
14('MySQL vs. YourSQL','In the following database comparison ...'),
15('MySQL Security','When configured properly, MySQL ...');
16BEGIN;
17INSERT INTO articles (title,body) VALUES
18('MySQL Tutorial','DBMS stands for DataBase ...');
19# Make durable the AUTO_INCREMENT in the above incomplete transaction.
20connect  flush_redo_log,localhost,root,,;
21SET GLOBAL innodb_flush_log_at_trx_commit=1;
22BEGIN;
23DELETE FROM articles LIMIT 1;
24ROLLBACK;
25disconnect flush_redo_log;
26connection default;
27INSERT INTO articles (title,body) VALUES
28('MySQL Tutorial','DBMS stands for DataBase ...');
29CREATE FULLTEXT INDEX idx ON articles (title,body);
30SELECT * FROM articles
31WHERE MATCH (title,body)
32AGAINST ('Database' IN NATURAL LANGUAGE MODE);
33id	title	body
341	MySQL Tutorial	DBMS stands for DataBase ...
355	MySQL vs. YourSQL	In the following database comparison ...
368	MySQL Tutorial	DBMS stands for DataBase ...
37INSERT INTO articles (title,body) VALUES
38('MySQL Tutorial','DBMS stands for DataBase ...')  ,
39('How To Use MySQL Well','After you went through a ...'),
40('Optimizing MySQL','In this tutorial we will show ...'),
41('1001 MySQL Tricks','1. Never run mysqld as root. 2. ...'),
42('MySQL vs. YourSQL','In the following database comparison ...'),
43('MySQL Security','When configured properly, MySQL ...');
44connect dml, localhost, root,,;
45BEGIN;
46INSERT INTO articles (title,body) VALUES
47('MySQL Tutorial','DBMS stands for DataBase ...');
48connection default;
49# Make durable the AUTO_INCREMENT in the above incomplete transaction.
50connect  flush_redo_log,localhost,root,,;
51SET GLOBAL innodb_flush_log_at_trx_commit=1;
52BEGIN;
53DELETE FROM articles LIMIT 1;
54ROLLBACK;
55disconnect flush_redo_log;
56connection default;
57disconnect dml;
58INSERT INTO articles (title,body) VALUES
59('MySQL Tutorial','DBMS stands for DataBase ...');
60SELECT * FROM articles
61WHERE MATCH (title,body)
62AGAINST ('Database' IN NATURAL LANGUAGE MODE);
63id	title	body
641	MySQL Tutorial	DBMS stands for DataBase ...
655	MySQL vs. YourSQL	In the following database comparison ...
668	MySQL Tutorial	DBMS stands for DataBase ...
679	MySQL Tutorial	DBMS stands for DataBase ...
6813	MySQL vs. YourSQL	In the following database comparison ...
6916	MySQL Tutorial	DBMS stands for DataBase ...
70DROP TABLE articles;
71CREATE TABLE articles (
72id int PRIMARY KEY,
73FTS_DOC_ID BIGINT UNSIGNED NOT NULL,
74title VARCHAR(200),
75body TEXT
76) ENGINE=InnoDB;
77CREATE FULLTEXT INDEX idx1 on articles (title, body);
78INSERT INTO articles VALUES
79(1, 10, 'MySQL Tutorial','DBMS stands for DataBase ...')  ,
80(2, 1, 'How To Use MySQL Well','After you went through a ...'),
81(3, 2, 'Optimizing MySQL','In this tutorial we will show ...'),
82(4, 11, '1001 MySQL Tricks','1. Never run mysqld as root. 2. ...'),
83(5, 6, 'MySQL vs. YourSQL','In the following database comparison ...'),
84(7, 4, 'MySQL Security','When configured properly, MySQL ...');
85connect dml, localhost, root,,;
86BEGIN;
87INSERT INTO articles VALUES
88(100, 200, 'MySQL Tutorial','DBMS stands for DataBase ...');
89connect dml2, localhost, root,,;
90#
91# MDEV-19073 FTS row mismatch after crash recovery
92#
93CREATE TABLE mdev19073(id SERIAL, title VARCHAR(200), body TEXT,
94FULLTEXT(title,body)) ENGINE=InnoDB;
95INSERT INTO mdev19073 (title, body) VALUES
96('MySQL Tutorial', 'DBMS stands for Database...');
97CREATE FULLTEXT INDEX idx ON mdev19073(title, body);
98CREATE TABLE mdev19073_2 LIKE mdev19073;
99INSERT INTO mdev19073_2 (title, body) VALUES
100('MySQL Tutorial', 'DBMS stands for Database...');
101INSERT INTO mdev19073 (title, body) VALUES
102('MariaDB Tutorial', 'DB means Database ...');
103INSERT INTO mdev19073_2 (title, body) VALUES
104('MariaDB Tutorial', 'DB means Database ...');
105SELECT * FROM mdev19073 WHERE MATCH (title, body)
106AGAINST ('Database' IN NATURAL LANGUAGE MODE);
107id	title	body
1081	MySQL Tutorial	DBMS stands for Database...
1092	MariaDB Tutorial	DB means Database ...
110SELECT * FROM mdev19073_2 WHERE MATCH (title, body)
111AGAINST ('Database' IN NATURAL LANGUAGE MODE);
112id	title	body
1131	MySQL Tutorial	DBMS stands for Database...
1142	MariaDB Tutorial	DB means Database ...
115connection default;
116disconnect dml;
117disconnect dml2;
118INSERT INTO articles VALUES         (8, 12, 'MySQL Tutorial','DBMS stands for DataBase ...');
119SELECT * FROM articles WHERE MATCH (title, body)
120AGAINST ('Tutorial' IN NATURAL LANGUAGE MODE);
121id	FTS_DOC_ID	title	body
1223	2	Optimizing MySQL	In this tutorial we will show ...
1231	10	MySQL Tutorial	DBMS stands for DataBase ...
1248	12	MySQL Tutorial	DBMS stands for DataBase ...
125DROP TABLE articles;
126SELECT * FROM mdev19073 WHERE MATCH (title, body)
127AGAINST ('Database' IN NATURAL LANGUAGE MODE);
128id	title	body
1291	MySQL Tutorial	DBMS stands for Database...
1302	MariaDB Tutorial	DB means Database ...
131SELECT * FROM mdev19073_2 WHERE MATCH (title, body)
132AGAINST ('Database' IN NATURAL LANGUAGE MODE);
133id	title	body
1341	MySQL Tutorial	DBMS stands for Database...
1352	MariaDB Tutorial	DB means Database ...
136DROP TABLE mdev19073, mdev19073_2;
137