본문 바로가기

IT/MySql

MySql Fulltext 검색

MySql 5.7 이상은 InnoDB Fulltext Search에 대한 파서를 지원함.

 

1. mysql 시스템 변수 설정

검색시 문장 또는 단어를 잘라서 분석하기 위한 음절의 단위를 설정하기 위해

# vi /etc/my.cnf   아래 한 줄을 추가함.

 

ngram_token_size=2 (토큰 값은 1~10, 기본 설정은 2)

 

2. Fulltaxt 인덱스 생성

- table 생성시

mysql> create table 테이블명

(id int auto-increment not null primary key,

 칼럼1 varchar(50),

 칼럼2 varchar(255),

 fulltext index ngram_idx(칼럼1) with parser ngram)

engine=innodb character set utf8mb4;

 

* 인덱스명: ngram_idx

 

- 테이블 변경

mysql> alter table tbl add fulltext index ngram_idx(칼럼1) with parser ngram;

 

- 인덱스 생성

mysql> create fulltext index ngram_idx on articles(칼럼1) with parser ngram;

 

3. 인덱스 삭제

mysql> alter table 테이블명 drop index 인덱스명(ngram_idx); 

'IT > MySql' 카테고리의 다른 글

Mysql 5.7 root 패스워드  (413) 2022.08.31
Mysql 테이블내 중목데이터 삭제  (0) 2022.08.31
Mysql utf8 collation 문제  (0) 2022.08.29
Mysql 데이터 원격 복제(replication)  (0) 2022.08.29
MySql 2개 테이블 JOIN 업데이트 / 삭제  (384) 2022.08.29