programing

MariaDB에 대한 InnoDB 전체 텍스트 스톱워드를 올바르게 비활성화하는 방법은 무엇입니까?

minimums 2023. 8. 26. 10:39
반응형

MariaDB에 대한 InnoDB 전체 텍스트 스톱워드를 올바르게 비활성화하는 방법은 무엇입니까?

여기 스택 오버플로에서 다양한 사용자들이 제안하는 것들을 많이 시도해봤지만 아무 것도 작동하지 않는 것 같고 사용자가 키워드를 사용했을 때 정말 문제가 있습니다.

예를 들어, 다음과 같이 시도했습니다.

  1. 값 열이 있는 빈 노드 테이블을 만드는 중...
innodb_ft_enable_stopword=1
innodb_ft_server_stopword_table=db_name/table_name

그리고 이것은 효과가 없었습니다.

  1. 모디핑my.cnf[mysqld]...와 헤어지다.
innodb_ft_enable_stopword=OFF
  1. 세트GLOBAL또는SESSION...와 함께...
SET @@SESSION.innodb_ft_enable_stopword = 'OFF';
  1. mariadb를 다시 시작하는 중sudo service mysql restart인덱스를 삭제/재작성합니다.

저는 선택의 여지가 없습니다. 만약 누군가가 할 수 있다면, 그것을 비활성화할 수 있는 적절한 방법을 여기에 써주십시오.

저장소가 nodb 또는 aria(myisam)에 있을 수 있으므로 실제로 다음 단계를 수행할 수 있습니다.

  • my.cnf에서 변수 설정
innodb_ft_enable_stopword=OFF
ft_stopword_file=''
  • mariadb를 다시 시작합니다(아마도).service mysql restart또는 도커 컨테이너를 다시 시작합니다.)
  • innodb 테이블의 인덱스를 다시 작성합니다.
analyze table <YOUR_TABLE>;

아리아(myisam)의 테이블의 경우, 이것은

repair table <YOUR_TABLE>;
  1. 파일을 빈 파일로 변경합니다.
  2. MariaDB를 다시 시작합니다.
  3. 이 변경 사항에 따라 FT 인덱스를 다시 작성합니다.

언급URL : https://stackoverflow.com/questions/58524591/how-to-properly-disable-innodb-full-text-stopwords-for-mariadb

반응형