많은새로운 기능 및 이 릴리스의 개선. 다음은 짧고 불완전합니다 요약:
전체를 포함한 많은 새로운 SQL 기능SQL92서브 선택 기능 (모든 것이 여기에 있습니다 그러나 대상 목록 하위 선택).
지정할 클라이언트 측 환경 변수 지원 시간대와 날짜 스타일.
클라이언트/서버 연결 용 소켓 인터페이스. 이것은입니다 지금 기본값이 있으므로 시작해야 할 수도 있습니다Postmasterwith-i플래그
더 나은 비밀번호 인증 메커니즘. 기본 테이블 권한이 변경되었습니다.
구식시간 여행제거됨. 성능이 향상되었습니다.
참고 :Bruce Momjian은 다음 메모를 썼습니다 새 릴리스를 소개합니다.
언급하고 싶은 일반적인 6.3 문제가 있습니다. 이것들 한 문장으로 설명 할 수없는 큰 항목입니다. 에이 자세한 변경 목록 검토는 여전히 필요합니다.
먼저, 우리는 이제 subselect를 가지고 있습니다. 이제 우리는 그것들을 가지고 있으므로 나는 할 것입니다 SubSelect가 없으면 SQL은 매우 제한적입니다. 언어. SubSelect는 주요 기능이며 검토해야합니다 하위 선택이 더 나은 솔루션을 제공하는 장소에 대한 코드 당신의 쿼리. 더 많은 용도가 있다는 것을 알게 될 것 같습니다. 당신이 생각하는 것보다 하위 선택. Vadim은 우리를 큰 SQL 맵에 올렸습니다 하위 선택 사항과 완전히 기능적인 기능도 있습니다. 당신의 유일한 것 SubSelect를 사용하면 대상 목록에서 사용하는 것입니다.
두 번째, 6.3은 tcp/ip 대신 Unix 도메인 소켓을 사용합니다. 기본. 다른 기계의 연결을 가능하게하려면 사용해야합니다. 새로운 Postmaster -I 옵션 및 물론 PG_HBA.conf를 편집합니다. 또한, 이러한 이유로 PG_HBA.conf의 형식이 변경되었습니다.
셋째, char () 필드는 이제 varchar ()보다 빠른 액세스를 허용합니다. 또는 텍스트. 구체적으로, 텍스트와 varchar ()에는 페널티가 있습니다 이 유형의 첫 번째 열 다음 열에 모든 열에 액세스하십시오. 숯() 이 액세스 페널티도 사용했지만 더 이상 그렇지 않습니다. 이것 특히 테이블의 일부를 재 설계 할 것을 제안 할 수 있습니다. varchar ()로 정의한 짧은 문자 열이 있습니다. 또는 텍스트. 이것과 다른 변화는 6.3이 이전보다 훨씬 빠릅니다. 릴리스.
이제 Unix 파일과 무관하게 정의 할 수있는 비밀번호가 있습니다. 새로운 SQL 무지개 토토자 명령이 있습니다. pg_hba.conf 매뉴얼 페이지를 참조하십시오 자세한 정보. 새로운 테이블이 있습니다. PG_SHADOW는 있습니다 무지개 토토자 정보 및 무지개 토토자 비밀번호를 저장하는 데 무지개 토토됩니다. 기본값은 Postgres 슈퍼 무지개 토토자가 선택할 수 있습니다. PG_USER가 지금입니다 PG_SHADOW의 견해는 대중이 선택할 수 있습니다. 당신은 유지해야합니다 응용 프로그램에서 변경없이 PG_USER 무지개 토토.
사용자가 만든 테이블은 이제 더 이상 선택 허가가 없습니다 기본적으로 공개. ANSI 표준이 필요하기 때문에 이루어졌습니다 그것. 물론 당신은 다음에 원하는 권한을 부여 할 수 있습니다. 테이블이 생성됩니다. 시스템 테이블은 계속 선택 가능합니다 공공의.
실제 교착 상태 감지 코드도 있습니다. 더 이상 60 초가 없습니다 타임 아웃. 그리고 새로운 잠금 코드는 FIFO를 더 잘 구현합니다. 많이 무지개 토토하는 동안 자원 기아가 적어야합니다.
부적절한 문서화에 대한 많은 불만이 제기되었습니다 이전 릴리스. 토마스는 많은 새로운 매뉴얼에 많은 노력을 기울였습니다 이 릴리스를 위해. 문서/ 디렉토리를 확인하십시오.
공연상의 이유로 시간 여행이 사라졌지 만 트리거를 사용하여 구현했습니다 (PGSQL/Contrib/SPI/ReadMe 참조). 제발 유형, 연산자 등에 대한 New \ D 명령을 확인하십시오. 기본 테이블을 기반으로하지 않고 지금 자체 권한이 있습니다. 따라서 그들에 대한 권한은 별도로 설정해야합니다. 확인하다 /pgsql/인터페이스 몇 가지 새로운 방법Postgres.
이것은 실제로 설명이 필요한 첫 번째 릴리스입니다. 기존 사용자를 위해. 여러면에서 이것은 필요했기 때문에 필요했습니다 새로운 릴리스는 많은 제한 사항을 제거하고 직장은 사람들을 분류합니다 더 이상 사용이 필요하지 않습니다.
덤프/복원 무지개 토토pg_dump또는pg_dumpall그에게는 필요합니다 이전 릴리스에서 데이터를 마이그레이션하려는Postgres.
버그 수정 ------- Move 구현으로 깨진 바이너리 커서 수정 (Vadim) TCL 라이브러리 충돌 (1 월) 수정 Gerhard Hintermayer의 배열 처리에 대한 수정 ACL 오류를 수정하고 중복 PQTrace (Bruce)를 제거하십시오. 빈 파일에 대한 psql \ e 수정 (Bruce) Varchar () 필드 (Bruce)에서 TextCat에 대한 수정 DBT SendProc 수정 (Zeugswetter Andres) 진공 분석 구문 문제 (Bruce) 수정 국제 식별자 수정 (Tatsuo) 상속 테이블 (Bruce)의 집계 수정 바운드 외 데이터에 대해 substr ()를 수정하십시오 SELECT 1 = 1 또는 2 = 2에 대한 수정, 1 = 1 및 2 = 2를 선택하고 합 (2+2) (Bruce)을 선택하십시오. 상태 결과를 표시하려면 Notty 출력을 수정하십시오. -Q 옵션이 여전히 꺼져 있습니다 (Bruce) Count (*),보기가있는 AGG 및 여러 테이블 및 Sum (3) (Bruce) 수정 클러스터 수정 (Bruce) PQTRACE START/STOP에 대한 수정 (Bruce) 새로운 자물쇠 웨이터가 얻는 것과 같은 다양한 잠금 문제를 해결하십시오. 나이가 많은 웨이터들 앞에서 잠그고 Readlock 사람들이 공유하지 않음 작가가 자물쇠를 기다리고있는 경우 잠금. 대기 독자보다 우선 순위를 갖기 (Bruce) 외부 파일 (James)에서 쿼리를 실행할 때 PSQL에서 충돌 수정 열별로 여러 순서로 문제를 해결하고 첫 번째는 널 값 (Jeroen) Float8 및 Int4 (Thomas)의 올바른 해시 테이블 지원 기능 사용 Reenable Join = Create Operator Statement (Thomas)의 옵션 부울 운영자가 예상되는 행동에 맞게 변화하는 우선 순위 (Thomas) 과도한 정수 (Bruce)에서 Elog (오류) 생성 제약 조항에서 다중 연계 함수 허용 (Thomas) 'true', 'false', 'yes', 'no', '1', '0'에 대한 부울 입력 리터럴 확인 인식 할 수없는 경우 엘로그를 던지십시오 (오류) (토마스) 주요 대형 물체가 수정됩니다 복제물을 표시하여 그룹에 대한 수정 (Vadim) mergejion (vadim)의 인덱스 스캔 수정 향상 ------------ Subselects가 존재하는 모든 키워드 (Vadim, Bruce, Thomas) 새로운 사용자 매뉴얼 (Thomas, 기타) 자주 전달되는 기능을 인라인으로 인한 속도 실제 교착 상태 감지, 더 이상 타임 아웃 (Bruce) SQL92 "Constants"Current_Date, Current_Time, Current_Timestamp 추가 current_user (토마스) 제약 조건 구문 수정 SQL92- 호환 (Thomas) 지수를 사용하여 SQL92 기본 키 및 고유 한 조항 구현 (Thomas) 외국 키에 대한 SQL92 구문을 인식하십시오. 엘로그 통지를 던지기 (토마스) 널 고유 한 제약 조항 조항을 허용하지 않음 (각각 별도로 허용) (Thomas) 비 통치자 (토마스)의 우체제 스타일 캐스팅 ( "::") 허용 SQL3 True 및 False Boolean 상수에 대한 지원 추가 (Thomas) sql92 syntax for is true/is false/is true/false가 아님 (Thomas) 부울 리터럴에 짧은 줄을 허용합니다 (예 : "t", "tr", "tru") (Thomas) SQL92 구분 식별자 허용 (Thomas) SQL92 바이너리 및 16 진수 문자열 디코딩 (B'10 '및 X'1f') (Thomas) 구현 문자 문자열의 유형 강요에 대한 SQL92 구문을 지원합니다 (예 : "datetime 'now'") (Thomas) 텍스트 (Thomas)에 int2, int4 및 OID 유형에 대한 변환을 추가하십시오. 구축 지수를 구축 할 때 공유 잠금 장치 사용 (Vadim) 트랜잭션 블록 내부의 사용자 쿼리에 대해 무료 메모리가 할당 된 무료 메모리 이 쿼리는 완료되었고 <= 6.2.1 (vadim)에서 꺼졌습니다. 새로운 SQL 문 생성 절차 언어 생성 (Jan) 새로운Postgres절차 언어 (PL) 백엔드 인터페이스 (Jan) pg_dump -h 옵션 이름 바꾸기 -h (bruce) 암호, 유럽 날짜 (Peter)에 대한 Java 지원 추가 Like and ~,! ~ Operations (Bruce)에 인덱스를 사용하십시오. DateTime 및 Times -Span (Thomas)에 대한 해시 함수 추가 시간 여행 제거 (Vadim, Bruce) \ d 및 \ z에 페이징을 추가하고 \ i (Bruce)를 고치십시오. 백엔드 및 프론트 엔드 라이브러리에 Unix 도메인 소켓 지원 추가 (Goran) 위치 및 위치 및 초기 유틸리티 (Thomas)를 사용하여 데이터베이스 생성 구현 더 많은 SQL92 및/또는 허용Postgres열 식별자로 예약 된 단어 (Thomas) SQL92 세트 시간대에 대한 지원 확대 ... (Thomas) SET/SHOW/RESET TIME ZONE 사용 TZ 백엔드 환경 변수 (Thomas) 키워드 세트 구현 = 기본 및 설정 시간대 기본값 (Thomas) TZ 환경 변수 (Thomas)를 사용하여 설정 시간대 활성화 PGDATESTYLE ENVIRNING 변수 추가 프론트 엔드 및 백엔드 초기화 (Thomas) pgtz, pgcostheap, pgcostindex, pgrplans, pggeqo를 추가하십시오 프론트 렌드 라이브러리 초기화 환경 변수 (토마스) 회귀 테스트 시간대 "Setenv pgtz pst8pdt"로 자동 설정 (Thomas) 테이블, 열, 연산자, 유형에 대한 정보를 위해 PG_DESCRIPTION 테이블 추가 및 집계 (브루스) 시스템 테이블/인덱스 이름의 16 문자 제한을 32 자로 늘리십시오 (Bruce) System Indices 이름 바꾸기 (Bruce) '독일어'옵션 추가 데이터 스타일 (Thomas) "HH : MM : SS"필드 (Thomas)로 "ISO 스타일"타임 스팬 출력 형식을 정의하십시오. 델타 타임에 대한 분수 값 허용 (예 : '2.5 일') (Thomas) 델타 타임즈 (Thomas)에 대해 숫자 입력을보다 신중하게 검증하십시오. 가능한 한 해를 구현하여 date_part () (Thomas)까지 입력하십시오. timespan_finite () 및 text_timespan () 함수 정의 (Thomas) 아카이브 물건 제거 (Bruce) PG_PASSWORD 인증 데이터베이스가 별도로 허용됩니다. 시스템 비밀번호 파일 (TODD) 덤프 ACL, Grant, Revoke Contrions (Matt) 텍스트, varchar 및 bpchar 문자열 길이 함수 정의 (Thomas) 상속 및 비용 계산에 대한 쿼리 처리 수정 (Bruce) 생성 테이블 구현/AS Select (선택/내용 대안) (Thomas) 허용은 아닙니다 Select (Bruce)에 대한 노조 구현 Union, Group, Insert에 별개의 삽입 (Bruce) 추가 varchar () 디스크에 필요한 바이트 만 저장 (Bruce) Blobs (Peter)에 대한 수정 JDBC 용 Mega-Patch ... 변경 목록은 Readme_6.3 참조 (Peter) pqconnectdb ()에서 사용하지 않는 "옵션"을 제거하십시오. 교착 상태 (Bruce)를 설명하는 New Lock 명령 및 잠금 수동 페이지 새 psql \ da, \ dd, \ df, \ do, \ ds 및 \ dt 명령 (Bruce) 추가 시퀀스를 표시하려면 psql \ z 향상 (Bruce) psql \ d 테이블 (Bruce)에서 null 및 default 표시를 표시하십시오. 새로운 PSQL .PSQLRC 파일 시작 (Andrew) Syslog (Thomas)를 보여주기 위해 Contrib/Linux에서 샘플 스타트 업 스크립트를 수정하십시오. Contrib/IP_and_MAC (TOMH)의 IP 및 MAC 주소에 대한 새로운 유형 Contrib/UnixDate의 날짜/시간 유형을 사용한 UNIX 시스템 시간 변환 (Thomas) Contrib Stuff의 업데이트 (Massimo) DBD :: PG (Goran)에 UNIX 소켓 지원 추가 새로운 Python 인터페이스 (Pygresql 2.0) (D 'Arcy) New Frontend/백엔드 프로토콜에는 버전 번호, 네트워크 바이트 주문 (Phil)이 있습니다. PG_HBA.CONF의 보안 기능 향상 및 문서화, 많은 정리 (Phil) char ()는 이제 varchar () 또는 텍스트보다 빠른 액세스입니다 ECPG 내장 SQL 사전 처리기 시스템 열 오버 헤드 감소 (Vadmin) pg_time 테이블 제거 (Vadim) PG_TYPE 속성 추가로 길이가 필요한 유형을 식별하십시오 (BPCHAR, VARCHAR) 사본 명령이 실패 할 때 불쾌한 줄의 보고서를 추가하십시오 기본 테이블과 별도로보기 권한을 설정할 수 있습니다. 보안의 경우 적절한 시야 (Jan)에서 보조금/취소를 사용하십시오. 테이블에는 이제 기본 보조금 선택이 공개됩니다. 당신은해야합니다 그러한 권한을 명시 적으로 부여하십시오. 튜토리얼 예제 정리 (Darren) 소스 트리 변경 -------------------- 새로운 HTML 개발 도구 추가 및 /도구 /백엔드의 흐름도 SCO 컴파일에 대한 수정 Stratus 컴퓨터 포트 Robert Gillies bsd44_derived & i386_solaris에 대한 Shlib에 대한 지원이 추가되었습니다 더 자동화 (Brook)를 구성하십시오. 회귀 테스트 결과를 확인하려면 스크립트를 추가하십시오 파서 기능을 작은 파일로 나누고 함께 그룹화 (Bruce) heap_create로 heap_create_and_catalog로 이름을 바꾸고 heap_creatt로 이름을 바꿉니다 heap_create () (Bruce) 잠금을위한 SPARC/Linux 패치 (TOMS) 포트 이름을 제거하고 포트 특이 적 물건을 재구성하십시오 (MARC) Optimizer ReadMe 파일 추가 (Bruce) Optimizer에서 재귀를 제거하고 일부 코드를 정리하십시오 (Bruce) NetBSD 잠금 (Henry)에 대한 수정 libptcl make (tatsuo)에 대한 수정 AIX 패치 (Darren) 변경은 사실입니다. 거짓입니다. 최적화를 허용하기 위해 istrue () 또는 isfalse ()에 대한 함수 호출 (Thomas) 다양한 수정 NetBSD/SPARC 관련 (TOMH) 알파 리눅스 잠금 (Travis, Ryan) Elog (WARN)을 Elog (오류) (Bruce)로 변경하십시오. FREEBSD를위한 FAQ (MARC) 표준 분포 (MARC)의 일부로 PostODBC 소스 트리를 가져 오십시오. HP/UX 10 vs 9 (스탠)의 작은 패치 varchar length (Bruce)와 같은 유형 별 정보에 대한 New PG_ATTRIBUTE.ATTTYPMOD Unixware 패치 (Billy) 스핀 잠금 ASM 용 새로운 i386 '잠금'(Billy) 다중 백엔드에 대한 지원이 제거됩니다 OpenBSD 포트를 시작하십시오 보조 포트를 시작하십시오 Cygnus 포트를 시작하십시오 회귀 소품 (Thomas)에 문자열 함수 추가 이전에 자르기 한 몇 가지 기능 이름을 16 자 (Thomas)로 확장하십시오. 필요없는 malloc () 호출을 제거하고 palloc () (bruce)로 교체하십시오.