|
|
前のページ 1 2 3 次のページ
|
|
RMANをつかったバックアップ
|
Oracle DatabaseはLinux、UNIX、Windowsを問わず、様々なプラットフォームでリリースされており、OS間によって異なるバックアップ手順では問題になると考えたOracle社では、Recovery Manager(RMAN)という共通化したバックアップ/リカバリ専用のインターフェイスとコマンドを作りました。
RMANを使うことで、ディスクのバックアップからテープの制御を含めて統一した操作で実行できるようになっています。商用バックアップソフトとの間ではMML(Media Management Layer)と呼ばれるAPIにより、ライブラリとの連携も実現しています。
|
図2:RMANを使ったバックアップの概要
|
以下はRMAN実行時の書式になります。RMANは一種の言語になっているため統一化されてわかりやすいのですが、最初に書式を覚えなければならないというハードルもあります。最新のOracle Database 10gでは、Oracle Enterprise Managerと呼ばれる管理ツールによって、ある程度の管理はGUIからおこなうことができるため使いやすくなっています。
RMANを使ったバックアップ
|
RMAN> run {
2> allocate channel c1 type 'SBT_TAPE';
3> backup full
4> format 'ora10g:#338:ora10g:%s_%t:%d_1112094258'
5> ( tablespace 'EXAMPLE'
6> , 'SYSAUX'
7> , 'SYSTEM'
8> , 'UNDOTBS1'
9> , 'USERS'
10> );
11> release channel c1;
12> allocate channel c1 type 'SBT_TAPE';
13> sql "alter system archive log current";
14> backup
15> format 'ora10g:#338:ora10g:%s_%t:%d_1112094258'
16> (archivelog all);
17> release channel c1;
18> allocate channel ccontrolfile type 'SBT_TAPE';
19> backup
20> format 'ora10g:#338:ora10g:%s_%t:%d_1112094258'
21> (current controlfile);
22> release channel ccontrolfile;
23> }
|
|
DB2のバックアップ
|
DB2の場合はコントロールセンターか、コマンドラインを使うことで簡単にバックアップを実行することが可能です。バックアップ対象を指定してバックアップコマンドを実行するだけで、オンライン・バックアップに必要な処理などは全てDB2の内部でおこなってくれます。オンライン・バックアップの場合は、事前にログのタイプをアーカイブロギングに変更しておく必要があります。
|
コマンドラインからの実行例
|
$ db2 "backup db SAMPLE online to /work/backup"
|
|
PostgreSQL
|
オープンソースのデータベースであるPostgreSQLの場合には、標準で搭載されているpg_dump機能を使用することになります。pg_dumpコマンドは、単に結果を標準出力するだけのプログラムであるため、使用するにあたってはリダイレクトをおこないファイルとして出力する必要があります。
また、Oracle DatabaseやDB2のようにファイルレベルでのバックアップをおこなうものではなく、基本的にはSQLコマンドとしてダンプを実行しています。それによって取得したテキストをファイルとして保存しておき、いざ障害が発生した際には再度SQLコマンドを読み込んでもとの状態に復元するというものです。データベースの使用方法によっては、パフォーマンスに差が出てくる場合もありますので注意しておく必要があります。
|
前のページ 1 2 3 次のページ
|
|
|
|
著者プロフィール
バックボーン・ソフトウエア株式会社 青木 浩朗
ストレージ専業ベンダーにて、SEおよび企画を担当した後に、2001年にBakBoneSoftware入社。主に大手ベンダーのSEを担当しながら、テクニカル・マーケティングとして、各種講演や執筆活動を行っている。最近は、特にデータベースとクラスタリングに注力し、検証レポートを作成するのをライフワークとしている。
|
|
|
|