日記/2013-01-12

2019-06-23 (日) 14:50:57

preciseORCA バックアップとリストア

trustyORCA、xenialORCA、bionicORCAでも同様

pg_restoreでリストアする方法

バックアップ

$ sudo service jma-receipt stop
$ sudo -u orca pg_dump -Fc orca > orca.dump

リストア

$ sudo -u orca dropdb orca
$ sudo jma-setup --noinstall
$ sudo -u orca pg_restore -x -O -d orca orca.dump

次のようなエラーが出る。

pg_restore: [archiver (db)] Error while PROCESSING TOC:
pg_restore: [archiver (db)] Error from TOC entry 4952; 0 0 COMMENT EXTENSION plpgsql
pg_restore: [archiver (db)] could not execute query: ERROR:  must be owner of extension plpgsql
Command was: COMMENT ON EXTENSION plpgsql IS 'PL/pgSQL procedural language';

何やらorcaにowner権限が必要らしい。

こちら

http://www.orca.med.or.jp/receipt/download/precise/database.html

によるとエラーは無視してかまわないとのことだが、

$ sudo -u postgres psql postgres
postgres=# ALTER ROLE orca WITH SUPERUSER;
postgres=# \q

としてユーザーorcaにスーパーユーザー特権を付与するとエラーが出なくなった。

日記