2015/07/27

PostgreSQL - libintl-8.dll & database cluster initialisation failed

설치환경 :
Windows Server 2012 R2
Setupfile : postgresql-9.4.4-3-windows-x64.exe

설치과정에서, 발생할수 있는 오류로  설치 로그를 확인해 보니 수동으로 해결 가능.

 

[1]  libintl-8.dll  참조 오류
  -> 설치시 bin 폴더에 해당 파일이 존재하지만 참조 오류가 발생함.
       uninstall 후, libintl-8.dll 를 System32 에 복사후, 다시 install 실행.

 

[2] database cluster initialisation failed 오류 팝업 메시지
  -> 이 오류 메시지는,.  DB 설정 및 폴더등의 체크/설정을 하는 initcluster.vbs 에서 리턴하는 메시지.

  =>  여러 커뮤니티 글에서, 특정 계정 생성 및 계정 권한으로 설치를 하라고 하지만
         그런 문제는 아닌 것으로 보이며, 
        initcluster 스크립트에서 파라미터로 받는 값에 문제가 있을 때 발생하는 것으로 추정.

     해결방법 : 
        1. postgresql-9.4.4-3-windows-x64.exe 를 실행하여 에러가 발생하더라도 설치 완료 함.

        2. 에러가 있는 상태로 설치하면, DB 구성 및 기본 DB, 서비스 등록이 되어 있지 않음.
             -> 수동으로 진행하면 됨.

        3.  PostgreSQL\9.4\installer\server  의 initcluster.vbs 를 직접 실행하여 설정.
            예 : initcluster.vbs 
                         "NT AUTHORITY\NetworkService" "postgres" "postgres(*)123"
                               "D:/Database/PostgreSQL/9.4"
                               "D:\Database\PostgreSQL\data" 5432 "DEFAULT"

                 위 값에서, NT 계정은 실제 서비스 실행 계정 지정, superuser / superuserpwd
                 이렇게 실행하면, DB 구성/기본DB/NT폴더권한 이 자동으로 설정됨.

        4. 윈도우 서비스 수동 등록
            예 : pg_ctl.exe register -N "postgresql-x64-9.4" -D "D:\Database\PostgreSQL\data" -w

          

     정상 작동. 끝.

 

 

 


댓글 없음:

댓글 쓰기

가장 많이 본 글