質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
PostgreSQL

PostgreSQLはオープンソースのオブジェクトリレーショナルデータベース管理システムです。 Oracle Databaseで使われるPL/SQLを参考に実装されたビルトイン言語で、Windows、 Mac、Linux、UNIX、MSなどいくつものプラットフォームに対応しています。

Q&A

1回答

7429閲覧

PostgreSQLで論理バックアップ時に主キー設定が消える

javabigineer

総合スコア87

PostgreSQL

PostgreSQLはオープンソースのオブジェクトリレーショナルデータベース管理システムです。 Oracle Databaseで使われるPL/SQLを参考に実装されたビルトイン言語で、Windows、 Mac、Linux、UNIX、MSなどいくつものプラットフォームに対応しています。

0グッド

0クリップ

投稿2017/07/10 09:33

PostgreSQL9.3
pgadminⅢを使用しています。

PostgreSQLのテーブルをバックアップするために下記コマンドを実行して取得しているのですが
主キー設定等が消えてしまい、リストアした際に、主キー設定がされていないことで正常にデータ取り込めないという
現象が発生します。

pg_dumpコマンドでは、主キー設定はコピーできないのでしょうか?

pg_dump -h 10.2x.xx.2xx -p 5432 -U postgres -w -Fc>バックアップ.bk

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

A.Ichi

2017/07/11 04:02

もし可能であればオプションを-Fpに変えて-sを付けて作成したファイルの中を見てみては、どうでしょうか。ALTER TABLE ONLY hoge ADD CONSTRAINT hoge_pkey PRIMARY KEY (....);が有るとおもいますが。
javabigineer

2017/07/11 06:11

-Fpとすると、キー設定もコピーしてテキスト形式で出力されているようです。リストアしようとするとエラーになります。可能であればアーカイブ形式でバックアップを取りたいのですができないですかね??
A.Ichi

2017/07/11 06:48

どの様なエラーが出力されますでしょうか?alterのエラーですか。psql -lでDBのオーナーが確認できます。
javabigineer

2017/07/11 08:26

[アーカイバ] 入力ファイルが有効なアーカイブではないようです というエラーがでます。
A.Ichi

2017/07/11 08:48 編集

pg_restore -U posgres -d hogedb -w -v /tmp/hogedb.dmpで戻されているのでしょうか
javabigineer

2017/07/11 08:52

pg_Restore -h %IP% -p 5432 -U postgres -d hoge hoge.bak で戻しています
A.Ichi

2017/07/11 10:02

細かいですがpg_dumpの際にdbnameを指定されては、いかがでしょうか?restoreの際には指定されているので
A.Ichi

2017/07/11 10:54

とりあえず、psql (9.3.6)、pgAdmin3(1.22.1)の組み合わせでは、KEYは作成されました。
guest

回答1

0

通常、pg_dump では -a ないし --data-only オプションを指定しない限り、テーブル構造についての情報も含めてダンプします。
何か alias でも切られているのでしょうかね。

強引にやるとなると、

bash

1pg_dump -h [host] -p [port] -U [user] -w --section=pre-data --section=data --section=post-data -Fc>[filename]

とかですかね。

投稿2017/07/12 10:08

tacsheaven

総合スコア13703

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問