인프런 커뮤니티 질문&답변

이미란님의 프로필 이미지
이미란

작성한 질문수

데이터 분석 SQL Fundamentals

조인 실습 - 03

client encoding 관련 질문 드립니다

작성

·

393

0

맥으로 강의 수강 중 아래와 동일한 문제를 겪고 있습니다.

https://www.inflearn.com/questions/533059/%EC%8B%A4%EC%8A%B5-%EB%8D%B0%EC%9D%B4%ED%84%B0-%EC%85%8B%ED%8C%85-%EA%B4%80%EB%A0%A8-%EB%AC%B8%EC%9D%98-mac-%ED%99%98%EA%B2%BD

 

현재 상태는 아래와 같으며,

show client_encoding; 실행시 UTF8

SELECT pg_encoding_to_char(encoding) FROM pg_database WHERE datname = 'postgres'; 실행시 EUC_KR

 

이전에 수행하신 psql에서 postgresql client encoding을 다시 EUC-KR로 변경하시고, 마찬가지로 DBeaver에서 Client encoding 을 다시 EUC-KR로 변경하시고 테스트 해보시기 바랍니다. 

>> 위에서 DBeaver에서 Client encoding 을 다시 EUC-KR로 변경해보라고 하셔서

set client_encoding = 'EUC_KR' ; 실행시 아래와 같은 에러 문구가 나오고 있습니다. 혹시 해결 방법이 있을까요?

SQL Error [22021]: ERROR: invalid byte sequence for encoding "EUC_KR": 0xec0x9d

 

 

 

 

답변 3

0

이미란님의 프로필 이미지
이미란
질문자

감사합니다!

말씀주신 것 처럼 postgresql DB 문자열을 EUC-KR로 변경해도 EUC_KR로 확인되고 있습니다.

참고로 DBeaver에서 알려주신 쿼리 실행 결과는 아래와 같습니다.

psql :

DBeaver :

 

 

권 철민님의 프로필 이미지
권 철민
지식공유자

Postgresql이 설치될때 Postgres 가 기본적으로 utf8로 인코딩되어서 설치되어야 하는데, euc-kr로 설치되어서 발생하는 문제인데, 방법으로는

  1. postgresql 을 unistall 하고 다시 재 설치한다.

  2. 여전히 euc-kr이 문제이면

https://github.com/chulminkw/SQL_Funda

에 보시면 export_nw_euc_kr.sql 있는데 기존 nw 스키마의 모든 table들을 drop 하고 해당 sql을 수행하여 데이터 재 생성.

해보시고 안되면 다시 글 부탁드립니다.

0

권 철민님의 프로필 이미지
권 철민
지식공유자

안녕하십니까,

postgresql DB가 문자열 Encoding이 UTF8 되어 있어야 하는데 EUC_KR로 되어 있군요. DB 문자열을 UTF8로 변경하기 힘들면

set client_encoding을 EUC_KR이 아닌 EUC-KR 로 변경해 보시겠습니까?

 

감사합니다.

 

0

안녕하세요, 인프런 AI 인턴입니다.

이미란님께서 겪고 계신 client encoding 관련 문제는 맥 환경에서 PostgreSQL을 사용하실 때 자주 발생할 수 있는 문제입니다. 질문 내용을 바탕으로 관련된 정보를 찾아보았습니다. 특히, 이미란님의 경우 UTF8과 EUC_KR 인코딩 간의 문제로 보이며, 이에 대한 해결책을 찾는 것이 중요합니다.

이미 초록님의 경우와 유사한 상황에 대한 질문을 “실습 데이터 셋팅 관련 문의_mac 환경”에서 해결책을 제안받은 바가 있습니다. 해당 상황에서는 아래를 시도해볼 것이 제안되었습니다:

  1. Client_encoding값 변경: SET client_encoding = 'UTF8';를 실행하여 데이터베이스의 클라이언트 인코딩을 변경합니다. 이 경우 UTF8로 인코딩된 데이터를 올바르게 처리할 수 있습니다.

  2. DBeaver 인코딩 설정 변경: DBeaver에서 클라이언트의 인코딩 설정을 조정할 필요가 있습니다. 설정 > 데이터베이스 > 드라이버 > PostgreSQL 등의 경로를 따라가 인코딩을 UTF8로 설정할 수 있습니다.

질문자님의 경우, EUC_KR로 변경 시도 시 발생하는 에러에 대한 명확한 해결책은 제공된 정보만으로는 찾기 어렵습니다. 다만, 인코딩 문제가 발생하는 경우에는 데이터베이스와 DBeaver 양쪽 모두에서 사용하는 인코딩이 일치하는지 확인하는 것이 중요합니다. 추가적으로, EUC_KR로 강제 설정하는 대신 데이터와 호환되는 인코딩을 사용해 보시는 것도 하나의 방법일 수 있습니다.

혹시 인코딩 설정 변경 후에도 문제가 지속될 경우, PostgreSQL 공식 문서나 DBeaver 포럼을 통해 추가적인 지원을 받아보시는 것을 권장드립니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

이미란님의 프로필 이미지
이미란

작성한 질문수

질문하기