안녕하세요..
얼마전까지 8.0.6 을 사용하다가 큰맘 먹고 8.2.4 로 upgrade 를 했습니다~
그리고 나서 문자셋 관련 변경사항이 꽤 되어서 그런지 프로그램 뜯어고치고 고생고생해서
겨우 어느정도 돌아가고 있는데 불안불안해서 좀 살펴보다 보니 이상한 점이 하나 있어서 질문드립니다~
기존 8.0.6에서 저는
.psqlrc 파일에
\set AUTOCOMMIT off
\timing
set client_encoding to uhc
이렇게 해두고 사용합니다~
이상태에서 psql 실행해서..
siche=> create table a (a serial, b text);
NOTICE: CREATE TABLE will create implicit sequence "a_a_seq" for serial column "a.a"
CREATE TABLE
Time: 75.719 ms
siche=>
근데 8.2.4 에서 .psqlrc 파일에 위와 동일하게 쓰고 하면
hsjang=> create table a (a serial, b text);
서버가 갑자기 연결을 닫았음
이런 처리는 클라이언트의 요구를 처리하는 동안이나
처리하기 전에 서버가 갑자기 종료되었음을 의미함
서버로부터 연결이 끊어졌습니다. 다시 연결을 시도합니다: 실패.
!>
이렇게 됩니다..
8.2 쓰면서부터 저런식으로 끊어지는 경우가 굉장히 많아졌는데
도대체 뭐가 달라진건지 모르겠습니다..
다만 8.2.4에서도 .psqlrc에 set client_encoding to uhc 라인을 지우고 접속해서
해보면 아주 잘됩니다만 대신 \dt 이런 명령이 문자셋이 틀리다고 안되죠 -_-;;
혹시 이런 문제점 있는 분들 안계신가요??
아, 참고로 저는 서버의 기본 encoding 은 euckr 을 사용하고(터미널)
initdb 는 -E UTF-8 --lc-collate=C 이고 DATABASE encoding 도 UTF8 로 해서 사용합니다..
물론 이렇게 하고 uhc 로 client_encoding 을 변경해서 사용하지요~~
8.2 오기전까지는 저렇게 client_encoding 을 변경해서 사용하면 전혀 문제가 없었는데
8.2 오고나서는 툭하면 문자셋이 없다면서 끊어지고 로그도 엄청쌓이고 죽겠습니다 ㅠㅠ
|