日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql repair 索引_mysql 问题记录(1) 全文索引查询问题及使用方法

發布時間:2025/3/19 数据库 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql repair 索引_mysql 问题记录(1) 全文索引查询问题及使用方法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

問題描述:使用全文索引,查詢某些單詞,比如beijing,of,to,also等等。查詢失敗。。。

測試表結構:

測試表數據:

查詢失敗分析:

1."beijing"查詢失敗,是因為"beijing"一詞結果太多,占到了整列所有單詞的50%。

如果一個關鍵詞在50%的數據出現,那么這個詞會被當做無效詞。如果你想去除50%的現在請使用IN BOOLEAN MODE搜索。

查詢語句:select * from test01 where match(city) against ('beijing' IN BOOLEAN MODE);

2."of"查詢失敗,是因為全文索引搜索時,默認會忽略length<4 和 length>84的單詞。使用

show variables like 'ft%'; 命令可以查看關于全文索引的參數變量。

解決辦法:將ft_min_word_len 改為1。

修改后必須重建索引文件重新建立索引命令:repair table tablename quick

3."also"查詢失敗,也是因為全文索引的參數變量問題。ft_stopword_file會內置一些沒有實際意義的詞,在查詢時,會忽略這些詞。可將該參數設為"",則禁用單詞忽略。

補充:ft_boolean_syntax屬性

改變IN BOOLEAN MODE的查詢字符,不用重新啟動MySQL也不用重建索引

也就是說,可以用后面的這些符號,可以用來改變查詢的結果

詳見:MySQL使用全文索引(fulltext index)?www.cnblogs.com

補充:Windows下無法修改 ft_min_word_len的情況,

使用cmd打開 services.msc,

找到你的 MySQL服務,右鍵Properties,找到你的my.ini所在的路徑

停止MySQL,在my.ini中增加 ft_min_word_len = 1,重啟MySQL,

然后使用命令 show variables like 'ft_min_word_len'; 查看是否生效了

總結

以上是生活随笔為你收集整理的mysql repair 索引_mysql 问题记录(1) 全文索引查询问题及使用方法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。