InfoGrab Docs

PostgreSQL 설치 문제 해결

Mattermost의 PostgreSQL 설치 및 운영 중 발생할 수 있는 일반적인 문제를 해결하는 방법을 안내합니다.

Mattermost v8.0부터 PostgreSQL 은 플랫폼의 성능과 기능을 향상시키기 위해 Mattermost의 선택 데이터베이스입니다. PostgreSQL v15는 이전 릴리스와의 호환성에 영향을 줄 수 있는 변경 사항을 도입했습니다. PostgreSQL v15를 새로 설치하는 경우, Mattermost를 사용할 수 있도록 다음 명령을 실행하세요: GRANT CREATE ON SCHEMA public TO PUBLIC PostgreSQL 전체 텍스트 검색이 비영어 default_text_search_config 에서 인덱스를 사용하지 못하는 문제 # Mattermost는 하드코딩된 텍스트 검색 구성 대신 PostgreSQL 데이터베이스에서 전체 텍스트 검색을 위해 default_text_search_config 를 사용합니다. 그러나 인덱스는 여전히 하드코딩된 텍스트 검색 구성(영어)으로 생성되어, 전체 텍스트 검색이 인덱스를 사용하지 못할 수 있습니다. Posts 또는 Users 와 같은 Mattermost의 일부 테이블에는 PostgreSQL에서 데이터베이스 전체 텍스트 검색 기능을 향상시키기 위한 GIN 인덱스가 포함되어 있습니다. 이 인덱스는 특정 언어에 대해 구축되어야 하며, 생성 시 영어로 하드코딩됩니다. 전체 텍스트 검색 쿼리는 항상 default_text_search_config 데이터베이스 설정을 사용하여 수행됩니다. 전체 텍스트 검색 기능이 인덱스를 활용하려면 쿼리에 지정된 언어가 인덱스에 지정된 언어와 일치해야 합니다. default_text_search_config 가 english 로 설정되어 있지 않으면 GIN 인덱스가 사용되지 않습니다. 데이터베이스 관리자는 관심 있는 특정 GIN 인덱스를 삭제하고 default_text_search_config 값으로 재구축하여 이 문제를 해결할 수 있습니다. 예를 들어, 서버의 기본 언어가 스페인어인 경우: ```sql # 기존 인덱스를 삭제하기 전에 새 이름으로 새 인덱스를 생성합니다 CREATE INDEX CONCURRENTLY IF NOT EXISTS idx_posts_message_txt_spanish ON posts USING gin(to_tsvector('spanish', message)); # 새 인덱스가 작동하는지 확인합니다. 작동한다면 기존 인덱스를 삭제하고 새 인덱스의 이름을 변경합니다: DROP INDEX CONCURRENTLY IF EXISTS idx_posts_message_txt; ALTER INDEX idx_posts_message_txt_spanish RENAME TO idx_posts_message_txt; # PostgreSQL 사용자 이름 및 비밀번호 변경 # .env 파일에서 PostgreSQL 사용자 이름과 비밀번호를 변경하는 것을 권장합니다.