欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

MYSQL5.7 全文檢索中文無返回?cái)?shù)據(jù)的問題解決

 更新時(shí)間:2025年01月16日 08:25:17   作者:qiandeqiande  
本文介紹了MYSQL5.7 全文檢索中文無返回?cái)?shù)據(jù)的問題解決,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

在MySQL 5.7.6之前,全文索引只支持英文全文索引,不支持中文全文索引,需要利用分詞器把中文段落預(yù)處理拆分成單詞,然后存入數(shù)據(jù)庫。

從MySQL 5.7.6開始,MySQL內(nèi)置了ngram全文解析器,用來支持中文、日文、韓文分詞。

本文使用的MySQL 版本是5.7.22,InnoDB數(shù)據(jù)庫引擎。

1.修改my.ini文件,增加ngram 解析器,增加ngram_token_size= 2,然后重啟MYSQL服務(wù)

[mysql]
# 設(shè)置mysql客戶端默認(rèn)字符集
default-character-set=utf8
[mysqld]
# 設(shè)置3306端口
port = 13306
#mysql-5.7.43-winx64的路徑
basedir = D:\install\mysql\mysql-5.7.44-winx64  #修改為自己的數(shù)據(jù)庫解壓路徑
#mysql-5.7.43-winx64的路徑+\data
datadir = D:\install\mysql\mysql-5.7.44-winx64\data   #修改為自己的數(shù)據(jù)庫存儲(chǔ)路徑
# 允許最大連接數(shù)
max_connections=20
# 服務(wù)端使用的字符集默認(rèn)為8比特編碼的latin1字符集
character-set-server=utf8
# 創(chuàng)建新表時(shí)將使用的默認(rèn)存儲(chǔ)引擎
default-storage-engine=INNODB
# 創(chuàng)建模式
sql_mode = NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
ft_min_word_len = 1
ngram_token_size= 2

2.創(chuàng)建帶索引表:

CREATE TABLE articles (
    id INT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY,
    title VARCHAR (200),
    body TEXT,
    FULLTEXT (title) WITH PARSER ngram
) ENGINE = INNODB;

或修改表添加索引

drop index ft_title on articles;

create fulltext index ft_title  on articles(title)  WITH PARSER ngram;

3.查詢驗(yàn)證

SELECT * FROM articles WHERE MATCH (title) AGAINST ('上海 故事' IN NATURAL LANGUAGE MODE);

SELECT * FROM articles WHERE MATCH (title) AGAINST ('上海 故事' IN BOOLEAN MODE);

到此這篇關(guān)于MYSQL5.7 全文檢索中文無返回?cái)?shù)據(jù)的問題解決的文章就介紹到這了,更多相關(guān)MYSQL5.7 中文無返回?cái)?shù)據(jù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家! 

相關(guān)文章

最新評(píng)論