Database/Postgresql
[Postgresql] 데이터 베이스 복구
C마노
2016. 11. 15. 17:47
-- 백업본을 확인합니다.
[postgres@olmaster:~]$ lst합계 72-rw-r--r--. 1 postgres postgres 131 2012-10-30 13:30 .bashrcdrwx------. 4 postgres postgres 4096 2012-10-31 22:33 9.2/drwxr-xr-x. 51 root root 4096 2012-11-10 23:37 ../drwxr-xr-x. 2 postgres postgres 4096 2012-11-18 14:57 oradba/-rw-------. 1 postgres postgres 1238 2012-11-18 14:57 .bash_profile-rw-r--r--. 1 postgres postgres 532 2012-11-22 09:33 .psqlrc-rw-------. 1 postgres postgres 11345 2012-12-01 16:26 .bash_history-rw-------. 1 postgres postgres 13641 2012-12-01 16:57 .psql_history-rw-r--r--. 1 postgres postgres 5258 2012-12-01 23:56 scott_scottdb.backup-rw-r--r--. 1 postgres postgres 4920 2012-12-01 23:57 scott_scottdb_backup.sqldrwx------. 4 postgres postgres 4096 2012-12-01 23:57 ./[postgres@olmaster:~]$
-- 존재하는 scottdb 데이터베이스를 삭제합니다. 나중에 이 scottdb 를 복구할겁니다.
[postgres@olmaster:~]$ psql -U postgresPassword for user postgres:Null display is "NULL".Timing is on.Pager is always used.psql (9.2.1)Type "help" for help.postgres@[local]:5432 postgres#SQL> drop database scottdb;DROP DATABASETime: 124.638 mspostgres@[local]:5432 postgres#SQL> \q
-- 백업본을 이용하여 scottdb 데이터베이스 복구를 시도합니다.
[postgres@olmaster:~]$ pg_restore -U scott --dbname=scottdb --verbose scott_scottdb.backuppg_restore: connecting to database for restorePassword:pg_restore: [archiver (db)] connection to database "scottdb" failed: FATAL: database "scottdb" does not exist-- scottdb가 존재하지 않는다고 에러를 내뱉네요.
-- createdb 스크립트를 이용하여 scottdb 데이터베이를 생성합니다. 빈껍데기 일뿐이지요.
[postgres@olmaster:~]$ createdb -O scott scottdb암호: # scott 유저가 아닌 postgres 유저의 패스워드를 입력해야 합니다.[postgres@olmaster:~]$
-- 다시 복구를 시도합니다.
[postgres@olmaster:~]$ pg_restore -U scott --dbname=scottdb --verbose scott_scottdb.backuppg_restore: connecting to database for restorePassword:pg_restore: creating SCHEMA publicpg_restore: creating COMMENT SCHEMA publicpg_restore: creating EXTENSION plpgsqlpg_restore: creating COMMENT EXTENSION plpgsqlpg_restore: [archiver (db)] Error while PROCESSING TOC:pg_restore: [archiver (db)] Error from TOC entry 2813; 0 0 COMMENT EXTENSION plpgsqlpg_restore: [archiver (db)] could not execute query: ERROR: must be owner of extension plpgsqlCommand was: COMMENT ON EXTENSION plpgsql IS 'PL/pgSQL procedural language';pg_restore: creating TABLE bonuspg_restore: creating TABLE deptpg_restore: creating TABLE dummypg_restore: creating TABLE emppg_restore: creating TABLE salgradepg_restore: restoring data for table "bonus"pg_restore: restoring data for table "dept"pg_restore: restoring data for table "dummy"pg_restore: restoring data for table "emp"pg_restore: restoring data for table "salgrade"pg_restore: creating CONSTRAINT dept_pkeypg_restore: creating CONSTRAINT emp_pkeypg_restore: creating FK CONSTRAINT emp_deptno_fkeypg_restore: setting owner and privileges for DATABASE scottdbpg_restore: setting owner and privileges for SCHEMA publicpg_restore: setting owner and privileges for COMMENT SCHEMA publicpg_restore: setting owner and privileges for ACL publicpg_restore: WARNING: no privileges could be revoked for "public"pg_restore: WARNING: no privileges could be revoked for "public"pg_restore: WARNING: no privileges were granted for "public"pg_restore: WARNING: no privileges were granted for "public"pg_restore: setting owner and privileges for EXTENSION plpgsqlpg_restore: setting owner and privileges for COMMENT EXTENSION plpgsqlpg_restore: setting owner and privileges for TABLE bonuspg_restore: setting owner and privileges for TABLE deptpg_restore: setting owner and privileges for TABLE dummypg_restore: setting owner and privileges for TABLE emppg_restore: setting owner and privileges for TABLE salgradepg_restore: setting owner and privileges for TABLE DATA bonuspg_restore: setting owner and privileges for TABLE DATA deptpg_restore: setting owner and privileges for TABLE DATA dummypg_restore: setting owner and privileges for TABLE DATA emppg_restore: setting owner and privileges for TABLE DATA salgradepg_restore: setting owner and privileges for CONSTRAINT dept_pkeypg_restore: setting owner and privileges for CONSTRAINT emp_pkeypg_restore: setting owner and privileges for FK CONSTRAINT emp_deptno_fkeyWARNING: errors ignored on restore: 1[postgres@olmaster:~]$
오. 복구가 잘 됐습니다.