INSTALL PLUGIN simple_parser SONAME 'mypluglib.so'; # Test Part 2: Create Index Test(CREATE TABLE WITH FULLTEXT INDEX) CREATE TABLE articles ( id INT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY, title VARCHAR(200), body TEXT, FULLTEXT (title, body) WITH PARSER simple_parser ) ENGINE=InnoDB; INSERT INTO articles (title, body) VALUES ('MySQL Tutorial','DBMS stands for MySQL DataBase ...'), ('How To Use MySQL Well','After you went through a ...'), ('Optimizing MySQL','In this tutorial we will show ...'), ('1001 MySQL Tricks','How to use full-text search engine'), ('Go MySQL Tricks','How to use full text search engine'); SELECT * FROM articles WHERE MATCH(title, body) AGAINST('mysql'); id title body 1 MySQL Tutorial DBMS stands for MySQL DataBase ... 2 How To Use MySQL Well After you went through a ... 3 Optimizing MySQL In this tutorial we will show ... 4 1001 MySQL Tricks How to use full-text search engine 5 Go MySQL Tricks How to use full text search engine SELECT * FROM articles WHERE MATCH(title, body) AGAINST('will go'); id title body # Test plugin parser tokenizer difference SELECT * FROM articles WHERE MATCH(title, body) AGAINST('full-text'); id title body 4 1001 MySQL Tricks How to use full-text search engine SELECT * FROM articles WHERE MATCH(title, body) AGAINST('full text'); id title body 5 Go MySQL Tricks How to use full text search engine SELECT * FROM articles WHERE MATCH(title, body) AGAINST('"mysql database"' IN BOOLEAN MODE); id title body DROP TABLE articles; # Test Part 3: Row Merge Create Index Test(ALTER TABLE ADD FULLTEXT INDEX) CREATE TABLE articles ( id INT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY, title VARCHAR(200), body TEXT ) ENGINE=InnoDB; INSERT INTO articles (title, body) VALUES ('MySQL Tutorial','DBMS stands for MySQL DataBase ...'), ('How To Use MySQL Well','After you went through a ...'), ('Optimizing MySQL','In this tutorial we will show ...'), ('1001 MySQL Tricks','How to use full-text search engine'), ('Go MySQL Tricks','How to use full text search engine'); ALTER TABLE articles ADD FULLTEXT INDEX (title, body) WITH PARSER simple_parser; Warnings: Warning 124 InnoDB rebuilding table to add column FTS_DOC_ID SELECT * FROM articles WHERE MATCH(title, body) AGAINST('mysql'); id title body 1 MySQL Tutorial DBMS stands for MySQL DataBase ... 2 How To Use MySQL Well After you went through a ... 3 Optimizing MySQL In this tutorial we will show ... 4 1001 MySQL Tricks How to use full-text search engine 5 Go MySQL Tricks How to use full text search engine SELECT * FROM articles WHERE MATCH(title, body) AGAINST('will go'); id title body # Test plugin parser tokenizer difference SELECT * FROM articles WHERE MATCH(title, body) AGAINST('full-text'); id title body 4 1001 MySQL Tricks How to use full-text search engine SELECT * FROM articles WHERE MATCH(title, body) AGAINST('full text'); id title body 5 Go MySQL Tricks How to use full text search engine SELECT * FROM articles WHERE MATCH(title, body) AGAINST('full-text' WITH QUERY EXPANSION); id title body 4 1001 MySQL Tricks How to use full-text search engine 5 Go MySQL Tricks How to use full text search engine 2 How To Use MySQL Well After you went through a ... 1 MySQL Tutorial DBMS stands for MySQL DataBase ... 3 Optimizing MySQL In this tutorial we will show ... SELECT * FROM articles WHERE MATCH(title, body) AGAINST('full text' WITH QUERY EXPANSION); id title body 5 Go MySQL Tricks How to use full text search engine 4 1001 MySQL Tricks How to use full-text search engine 2 How To Use MySQL Well After you went through a ... 1 MySQL Tutorial DBMS stands for MySQL DataBase ... 3 Optimizing MySQL In this tutorial we will show ... SELECT * FROM articles WHERE MATCH(title, body) AGAINST('"mysql database"' IN BOOLEAN MODE); id title body DROP TABLE articles; # Test Part 3 END SET SESSION debug="+d,fts_instrument_use_default_parser"; # Test Part 4: Create Index Test with Default/Internal Parser CREATE TABLE articles ( id INT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY, title VARCHAR(200), body TEXT, FULLTEXT (title, body) WITH PARSER simple_parser ) ENGINE=InnoDB; INSERT INTO articles (title, body) VALUES ('MySQL Tutorial','DBMS stands for MySQL DataBase ...'), ('How To Use MySQL Well','After you went through a ...'), ('Optimizing MySQL','In this tutorial we will show ...'), ('1001 MySQL Tricks','How to use full-text search engine'), ('Go MySQL Tricks','How to use full text search engine'); SELECT * FROM articles WHERE MATCH(title, body) AGAINST('mysql'); id title body 1 MySQL Tutorial DBMS stands for MySQL DataBase ... 2 How To Use MySQL Well After you went through a ... 3 Optimizing MySQL In this tutorial we will show ... 4 1001 MySQL Tricks How to use full-text search engine 5 Go MySQL Tricks How to use full text search engine SELECT * FROM articles WHERE MATCH(title, body) AGAINST('will go'); id title body # Test plugin parser tokenizer difference SELECT * FROM articles WHERE MATCH(title, body) AGAINST('full-text'); id title body 4 1001 MySQL Tricks How to use full-text search engine 5 Go MySQL Tricks How to use full text search engine SELECT * FROM articles WHERE MATCH(title, body) AGAINST('full text'); id title body 4 1001 MySQL Tricks How to use full-text search engine 5 Go MySQL Tricks How to use full text search engine SELECT * FROM articles WHERE MATCH(title, body) AGAINST('"mysql database"' IN BOOLEAN MODE); id title body 1 MySQL Tutorial DBMS stands for MySQL DataBase ... DROP TABLE articles; # Test Part 5: Row Merge Create Index Test with Default/Internal Parser CREATE TABLE articles ( id INT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY, title VARCHAR(200), body TEXT ) ENGINE=InnoDB; INSERT INTO articles (title, body) VALUES ('MySQL Tutorial','DBMS stands for MySQL DataBase ...'), ('How To Use MySQL Well','After you went through a ...'), ('Optimizing MySQL','In this tutorial we will show ...'), ('1001 MySQL Tricks','How to use full-text search engine'), ('Go MySQL Tricks','How to use full text search engine'); ALTER TABLE articles ADD FULLTEXT INDEX (title, body) WITH PARSER simple_parser; Warnings: Warning 124 InnoDB rebuilding table to add column FTS_DOC_ID SELECT * FROM articles WHERE MATCH(title, body) AGAINST('mysql'); id title body 1 MySQL Tutorial DBMS stands for MySQL DataBase ... 2 How To Use MySQL Well After you went through a ... 3 Optimizing MySQL In this tutorial we will show ... 4 1001 MySQL Tricks How to use full-text search engine 5 Go MySQL Tricks How to use full text search engine SELECT * FROM articles WHERE MATCH(title, body) AGAINST('will go'); id title body # Test plugin parser tokenizer difference SELECT * FROM articles WHERE MATCH(title, body) AGAINST('full-text'); id title body 4 1001 MySQL Tricks How to use full-text search engine 5 Go MySQL Tricks How to use full text search engine SELECT * FROM articles WHERE MATCH(title, body) AGAINST('full text'); id title body 4 1001 MySQL Tricks How to use full-text search engine 5 Go MySQL Tricks How to use full text search engine SELECT * FROM articles WHERE MATCH(title, body) AGAINST('"mysql database"' IN BOOLEAN MODE); id title body 1 MySQL Tutorial DBMS stands for MySQL DataBase ... DROP TABLE articles; # Test Part 6: Test Query Parser with Default/Internal Parser SET GLOBAL innodb_ft_enable_diag_print = 1; CREATE TABLE articles ( id INT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY, title VARCHAR(200), body TEXT, FULLTEXT (title, body) WITH PARSER simple_parser ) ENGINE=InnoDB; INSERT INTO articles (title, body) VALUES ('MySQL Tutorial','DBMS stands for MySQL DataBase ...'), ('MySQL Tutorial','DBMS stands for MySQL good one DataBase ...'), ('How To Use MySQL Well','After you went through a ...'), ('Optimizing MySQL','In this tutorial we will show ...'), ('1001 MySQL Tricks','How to use full-text search engine'); SELECT * FROM articles WHERE MATCH(title, body) AGAINST('+mysql -database' IN BOOLEAN MODE); id title body 3 How To Use MySQL Well After you went through a ... 4 Optimizing MySQL In this tutorial we will show ... 5 1001 MySQL Tricks How to use full-text search engine SELECT * FROM articles WHERE MATCH(title, body) AGAINST('>mysql