| 롤 토토 : 문서 : 9.5 : 롤 토토 | |||
|---|---|---|---|
| 토토 캔 : 문서 : 9.5 : test_decoding | PostgreSQL : 문서 : 9.5 : 추가 제공 윈 토토 | 부록 F. 추가 제공 모듈 | PostgreSQL : 문서 : 9.5 : 토토 사이트 순위 |
그사설 토토모듈은 다음을 사용한 애플리케이션에 대해 이전 버전과 호환되는 텍스트 검색 기능을 제공합니다.사설 토토텍스트 검색이 코어에 통합되기 전포스트그레SQL릴리스 8.3.
내장된 텍스트 검색 기능은 다음을 기반으로 했지만사설 토토그리고 대체로 유사하지만 기존 애플리케이션에 이식성 문제를 일으킬 수 있는 작은 차이점이 많이 있습니다.
일부 기능의 이름이 변경되었습니다. 예를 들면순위에ts_rank. 교체사설 토토모듈은 이전 이름을 갖는 별칭을 제공합니다.
내장된 텍스트 검색 데이터 유형 및 기능은 모두 시스템 스키마 내에 존재합니다.pg_catalog. 다음을 사용하는 설치에서사설 토토, 이러한 개체는 일반적으로공개스키마, 일부 사용자는 이를 자신의 별도 스키마에 배치하기로 선택했습니다. 따라서 객체에 대한 명시적인 스키마 한정 참조는 두 경우 모두 실패합니다. 교체사설 토토모듈은 다음에 저장된 별칭 개체를 제공합니다.공개(또는 필요한 경우 다른 스키마) 해당 참조가 계속 작동하도록 합니다.
a의 개념이 없습니다"현재 파서"또는"현재 사전"내장된 텍스트 검색 기능에서는 현재 검색 구성(에 의해 설정됨default_text_search_config매개변수). 현재 파서와 현재 사전은 디버깅용 함수에서만 사용되었지만 일부 경우에는 여전히 이식 장애가 될 수 있습니다. 교체사설 토토모듈은 이러한 추가 상태 변수를 에뮬레이션하고 이를 설정하고 검색하기 위한 이전 버전과 호환되는 기능을 제공합니다.
교체로 해결되지 않은 몇 가지 문제가 있습니다.사설 토토모듈이므로 어떤 경우에도 애플리케이션 코드를 변경해야 합니다.
오래된사설 토토트리거 함수는 인수 목록의 항목이 변환되기 전에 텍스트 데이터에 대해 호출될 함수의 이름이 되도록 허용했습니다.ts벡터형식. 호출된 함수가 의도한 함수인지 보장할 수 없기 때문에 이는 보안 허점으로 간주되어 제거되었습니다. 색인을 생성하기 전에 데이터를 처리해야 하는 경우 권장되는 접근 방식은 자체적으로 작업을 수행하는 맞춤 트리거를 작성하는 것입니다.
텍스트 검색 구성 정보는 다음에서 사용하는 테이블과 눈에 띄게 다른 핵심 시스템 카탈로그로 이동되었습니다.사설 토토. 해당 테이블을 검사하거나 수정한 모든 애플리케이션은 조정이 필요합니다.
응용 프로그램이 사용자 정의 텍스트 검색 구성을 사용한 경우, 새 텍스트 검색 구성 SQL 명령을 사용하여 핵심 카탈로그에서 해당 구성을 설정해야 합니다. 교체사설 토토모듈은 이전 세트를 로드할 수 있도록 하여 이에 대한 약간의 지원을 제공합니다.사설 토토구성 테이블에포스트그레SQL8.3. (모듈이 없으면 구성 데이터를 로드할 수 없습니다.regprocedure열은 함수로 분석될 수 없습니다.) 해당 구성 테이블은 실제로는 그렇지 않습니다.할 것적어도 8.3에서 동등한 사용자 정의 구성을 설정하는 동안 해당 내용을 참조할 수 있습니다.
오래된reset_tsearch()그리고get_covers()함수는 지원되지 않습니다.
대체사설 토토모듈은 별칭 연산자를 정의하지 않으며 전적으로 내장된 연산자에 의존합니다. 이는 애플리케이션이 스키마에 한정된 연산자 이름을 명시적으로 사용한 경우에만 문제가 발생하며 이는 매우 드문 일입니다.
다음을 사용하는 8.3 이전 설치를 업데이트하는 권장 방법사설 토토다음과 같습니다:
일반적인 방법으로 이전 설치에서 덤프를 만드십시오. 단, 사용하지 마십시오.-c (--깨끗함) 옵션pg_dump또는pg_dumpall.
새 설치에서는 빈 데이터베이스를 생성하고 대체 데이터베이스를 설치합니다.사설 토토모듈을 텍스트 검색을 사용할 각 데이터베이스에 추가합니다. 이 작업을 수행해야 합니다.이전덤프 데이터 로드 중! 이전 설치에 다음이 있는 경우사설 토토이외 스키마의 개체공개, 반드시 조정하세요확장 프로그램 만들기교체 개체가 동일한 스키마에 생성되도록 명령합니다.
덤프 데이터를 로드합니다. 원본을 다시 만들지 못하여 보고된 오류가 꽤 많을 것입니다.사설 토토객체. 이러한 오류는 무시할 수 있지만 이는 단일 트랜잭션에서 덤프를 복원할 수 없음을 의미합니다(예: 사용할 수 없음)pg_restore의-1스위치).
복원된 내용 조사사설 토토구성 테이블(pg_ts_cfg등등), 필요에 따라 동등한 내장 텍스트 검색 구성을 생성합니다. 이전 구성 테이블에서 유용한 정보를 모두 추출한 후에는 기존 구성 테이블을 삭제할 수 있습니다.
애플리케이션을 테스트하세요.
나중에 대체 항목을 제거할 수 있도록 별칭 텍스트 검색 개체에 대한 응용 프로그램 참조의 이름을 바꿀 수 있습니다.사설 토토모듈.