[pgsql-jp: 41568] Re: バックアップ/リストア

Hiroki Kataoka kataoka @ interwiz.jp
2014年 2月 13日 (木) 17:55:10 JST


片岡です。

後藤さん、そうです、私の案は「試してみたら?」的なアドバイスです。うまくいけばラッキーということで。
ただ8.4にはすでに-iオプションが無くなっていたとは知りませんでしたが(あまり使わないので)。

おそらく当初の目的はスキーマ定義とデータを持っていけばいいだけだと思うので、三谷さんのおっしゃる通りpg_dumpでスキーマだけをSQL文で取り出し、データを別途pg_dumpやcopyで取り出して持っていけば目的は達成できますね。


2014年2月13日 16:53 Kazumasa Gotoh <kgotoh @ cic-kk.co.jp>:
>
> 後藤です。
>
> なるほど、そう言う手が… と思いました。
>
> ただ、PostgreSQL 8.4 のマニュアルを見ると、-i は廃止されたオプションで
> 無視される。と、ありました
>
> また、8.2 のマニュアルでは以下のように書かれているので、8.2 から 8.4 の
> ダンプがうまく取れるか、けっこう微妙な気がします。
>
> そのテーブルが 8.4 以降サポートされた機能を使っていたら当然ダメでしょうし…
>
> 質問者が「一度試してみる」のはアリかと思いますが、見かけ上うまくいった
> ように見えても実は… ということもありそうで、本当に全データがうまく
> 移行できたかの検証は、ちょっとやっかいかも知れません。
>
> --------------------------------------------------------------------------
> -i
> --ignore-version
>
>     pg_dumpとデータベースサーバのバージョンの不一致を無視します。
>
>     pg_dumpは、実行中の過去のリリースのPostgreSQLからダンプすることができ
>     ますが、(現時点では7.0より前の)非常に古いバージョンのデータベースは
>     サポートしていません。 使用するpg_dumpより新しいサーバからダンプする
>     ことはほとんどの場合できません。 バージョンチェックを無効にする必要が
>     ある場合には、このオプションを使います(この場合、pg_dumpが失敗しても、
>     警告がなかったとは言わないでください)。
> --------------------------------------------------------------------------
>
> From: Hiroki Kataoka <kataoka @ interwiz.jp>
> Date: Thu, 13 Feb 2014 16:20:38 +0900
>
>> 片岡です。
>>
>> PostgreSQLでは一般的に、リストア先のバージョンのpg_dumpでダンプを取るのが望ましいですので、まずは8.2のpg_dumpでダンプを取ってみたらどうでしょう?
>> そのままではバージョンの不一致でpg_dumpがエラーになりますが、確か -i
>> オプションを付ければバージョン不一致のエラーを無視してダンプを取ってくれたと思います。
>>
>>
>>
>> 2014年2月12日 17:52  <masaosa9592 @ zenrin.co.jp>:
>>> 佐野と申します。
>>> PostgreSQLのバックアップ/リストアについて質問があります。
>>>
>>> PostgreSQL 8.4.14 から PostgreSQL 8.2.14へ
>>> テーブル指定で、バックアップ/リストアを行いたいと考えていますが、可能でしょうか。
>>>
>>> PostgreSQL 8.4.14 のPgAdminで作成したバックアップファイルを
>>> PostgreSQL 8.2.14 のPgAdminでリストアのファイルとして指定しましたが、
>>> OKボタンが有効にならず、実行することができませんでした。
>>>
>>>
>>> 補足
>>>  バックアップ対象のテーブルは、6.6億レコード(220GB)ありますので、
>>>  可能であれば、バックアップ/リストア機能を利用したいと考えています。
>>>
>>>
>>> 以上、よろしくお願い致します。
>>>
>>
>>
>>
>> --
>> Hiroki Kataoka



-- 
Hiroki Kataoka


pgsql-jp メーリングリストの案内