[pgsql-jp: 41569] Re: バックアップ/リストア
mitani
mitani @ sraw.co.jp
2014年 2月 13日 (木) 18:11:14 JST
三谷@広島です。
pg_dumpでも -a オプションをつければ、
COPY文のデータのみが取得できます。
ちなみに、--insertsオプションを付けると、
COPY文の代りにINSERT文になります。
リストアがCOPYより遅くなりますけど。
8.2はサポートが終わっているバージョンなので、
できれば新しいバージョンに移行した方が良いとは思いますが、
色々事情があるのでしょうね。
--
On Thu, 13 Feb 2014 17:52:54 +0900
花田 茂 <hanada @ metrosystems.co.jp> wrote:
> 花田です。
>
> pg_dumpを離れられるならばですが、COPY FROM/TOを使えばデータ部分はバー
> ジョン依存のないフォーマット(CSV/テキスト)で移行できそうですね。
>
> 移行先にテーブルを作成するためのDDLは8.4のpg_dumpを用いて pg_dump -s -t
> <テーブル名> で取得して必要に応じて修正を……。
>
> # この時点であえて8.2系に移行する理由の方が気になっていたり(^^;
>
> (2014/02/13 17:25), mitani wrote:
> > 三谷@広島です。
> >
> > pg_dumpは基本的に同じバージョンの物を使うように、とのことですので、
> > 古いバージョンのpg_dumpでメジャーバージョンの違うサーバのダンプを取るのは
> > 難しいかもしれません。
> >
> > テーブル1つであれば、サーバと同じバージョンのpg_dumpでスキーマとデータをダンプし、
> > それぞれをダウングレード先のserverと同じバージョンのpsqlコマンドでリストアできませんかね。
> > plane SQLなら取り込めるのではないでしょうか。
> >
> > --
> >
> >
> > On Thu, 13 Feb 2014 16:53:08 +0900 (JST)
> > Kazumasa Gotoh <kgotoh @ cic-kk.co.jp> wrote:
> >
> >>
> >> 後藤です。
> >>
> >> なるほど、そう言う手が… と思いました。
> >>
> >> ただ、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
> >>
> >> __________ ESET NOD32 Antivirus からの情報, ウイルス定義データベースのバージョン 9416 (20140212) __________
> >>
> >> このメッセージは ESET NOD32 Antivirus によって検査済みです。
> >>
> >> http://canon-its.jp
> >>
> >>
> >>
> >
> >
>
>
> --
> 株式会社メトロシステムズ
> 花田 茂
> Mail : hanada @ metrosystems.co.jp
> Tel : 03-5951-1219
> Fax : 03-5951-2929
>
> __________ ESET NOD32 Antivirus からの情報, ウイルス定義データベースのバージョン 9416 (20140212) __________
>
> このメッセージは ESET NOD32 Antivirus によって検査済みです。
>
> http://canon-its.jp
>
>
>
--
mitani <mitani @ sraw.co.jp>
pgsql-jp メーリングリストの案内