OS X Server 3.2.1 및 이후 버전으로 업그레이드한 후 사용자 설정 Postgres 데이터 복구하기

OS X Server는 Postgres 데이터베이스를 사용하여 서비스 데이터를 저장합니다. 자체 테이블을 데이터베이스에 추가한 경우에는 Server 3.2.1 및 이후 버전으로 업데이트한 후에 Postgres 데이터에 접근하지 못할 수 있습니다.

업그레이드 후에 Postgres 데이터에 접근할 수 없다면 다음 단계를 수행합니다.

  1. 관리자로 서버에 로그인합니다.

  2. 터미널을 열고 다음 명령을 사용합니다.

    sudo serveradmin stop postgres

  3. /라이브러리/Server/PostgreSQL/Config/org.postgresql.postgres.plist를 편집하고 unix_socket_directory를 unix_socket_directories로 변경합니다.

  4. 터미널에서 다음 명령을 사용합니다.

cd /tmp

sudo mv /Library/Server/PostgreSQL/Data /Library/Server/PostgreSQL/DataOld

sudo -u _postgres /Applications/Server.app/Contents/ServerRoot/usr/bin/initdb --encoding UTF8 --locale=C -D /Library/Server/PostgreSQL/Data

sudo -u _postgres /Applications/Server.app/Contents/ServerRoot/usr/bin/pg_upgrade -b /Applications/Server.app/Contents/ServerRoot/usr/libexec/postgresql9.2 -B /Applications/Server.app/Contents/ServerRoot/usr/bin -d /Library/Server/PostgreSQL/DataOld -D /Library/Server/PostgreSQL/Data

sudo launchctl load -w /Applications/Server.app/Contents/ServerRoot/System/Library/LaunchDaemons/org.postgresql.postgres.plist

sudo serveradmin start postgres

모든 데이터가 성공적으로 마이그레이션되었는지 확인했으면 /라이브러리/Server/PostgreSQL/DataOld를 제거하면 됩니다.

참고: OS X Server에서 사용한 Postgres 데이터베이스는 시스템에서 사용되는 서비스 데이터에만 사용하도록 되어 있습니다. 사용자 설정 콘텐츠를 이 데이터베이스에 추가하지 마십시오. OS X Server에서 Postgres를 실행하려면 자체 인터페이스를 다운로드하여 설치해야 합니다.

게시일: