(57)【要約】【課題】データベースＤＢの障害等が発生した場合、差分データを復旧することができるデータベースバックアップ方法およびそのシステムを提供することにある。【解決手段】データベースＤＢ３１の全体のデータをバックアップした後に、発生したデータベースの障害に対し、データベースＤＢ３１のバックアップ後の運用開始データと障害発生直前との差分をバックアップするデータベースバックアップ方法において、前記全体のデータをバックアップした後のデータについてＳＱＬバックアップＡＰＩ２９を介してＳＱＬ文を作成するとともに、ＳＱＬ文を保存し、データベースＤＢ３１の障害発生時に保存されているＳＱＬ文のデータを順次バックアップ２１させる。【選択図】      図２
2006244394.tif 000002
【特許請求の範囲】
【請求項１】
データベースの全体データをバックアップした後に、発生したデータベースの障害に対し、データベースのバックアップ後の運用開始データと障害発生直前との差分をバックアップするデータベースバックアップ方法において、前記全体のデータをバックアップした後のデータについてＳＱＬバックアップＡＰＩを介してＳＱＬ文を作成するとともに、ＳＱＬ文を保存し、データベースの障害発生直前に保存されているＳＱＬ文のデータを順次バックアップさせることを特徴とするデータベースバックアップ方法。
【請求項２】
データベースの全体データをバックアップした後に、発生したデータベースの障害に対し、データベースのバックアップ後の運用開始データと障害発生直前との差分をバックアップするデータベースバックアップシステムにおいて、前記全体のデータをバックアップした後の差分データを作成するＳＱＬバックアップＡＰＩと、ＳＱＬ文を保存するデータ保存手段と、ＳＱＬ文のデータをバックアップするバックアップ手段とを有することを特徴とするデータベースバックアップシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データベースを利用しているたとえば、ストアーコントローラ等のデータベースバックアップ方法およびそのシステムに関する。
【背景技術】
【０００２】
従来、コンビニエンス・ストアー等において、ＰＯＳ端末とストアーコントローラ等からなるＰＯＳシステムは、２４時間の営業稼動状態にあり、繁忙時にデータベースをバックアップするためにシステムを止めることができない。そのため、深夜等の所定の時間帯に定期的にデータベースのバックアップを実施している。
【０００３】
また、データベースの障害発生時に、データベースバックアップ媒体から障害発生以前の退避しておいたデータを取り出して複数のボリュームからなるデータベースにリストアしたあと、ログバックアップ媒体およびログファイルからログ情報を順次取り出してデータベースの該当するボリュームに書き込むことを繰り返しリカバリするようにしている。（たとえば、特許文献１参照）。
【特許文献１】特開平６ー２５０９０５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
このように、突発的に発生するシステム障害に備えて定期的なバックアップ運用管理が実施されている。しかし、データベースのバックアップ後に障害が発生すると、実施されたデータのバックアップをレストアすることができるが、バックアップ後に運用開始されたデータが消失してしまう。
【０００５】
また、特許文献１のものは、バックアップが複雑となり、コンビニエンス・ストアー等では、コストアップになり導入することが難しくなる。
【０００６】
本発明は、データベースの障害等が発生した場合、差分データを復旧することができるデータベースバックアップ方法およびそのシステムを提供することにある。
【課題を解決するための手段】
【０００７】
データベースの全体データをバックアップした後に、発生したデータベースＤＢの障害に対し、データベースＤＢのバックアップ後の運用開始データと障害発生直前との差分をバックアップするデータベースバックアップ方法において、前記全体のデータをバックアップした後のデータについてＳＱＬバックアップＡＰＩを介してＳＱＬ文を作成するとともに、ＳＱＬ文を保存し、データベースの障害発生時に保存されているＳＱＬ文のデータを順次バックアップさせることを特徴とする。
【発明の効果】
【０００８】
本発明によれば、データベースバックアップ直後の運用開始から障害発生直前までの差分データを復旧することが可能になる。
【発明を実施するための最良の形態】
【０００９】
以下、本発明の一実施の形態について図面を参照にして説明する。
【００１０】
図１は、コンビニエンス・ストアーなどに構築されたＰＯＳ（Point Of Sales：販売時点情報管理）システムの概略図である。店舗内には、ストアーコントローラ１１を設置し、このストアーコントローラ１１に対して複数のＰＯＳ（Point Of Sales）端末１２がＬＡＮ（Local Area Network）１３を介して接続されている。
【００１１】
図２は、ストアーコントローラ１１の構成を示すブロック図である。図２に示すように、このストアーコントローラ１１は、制御部本体としてＣＰＵ（Central Processing Unit）２１を搭載している。このＣＰＵ２１からのシステムバス２２には、ＲＯＭ（Read Only Memory)２３、ＲＡＭ（Random Access Memory）２４、ＨＤＤ（Hard Disk Drive）装置２５、入力部２６および通信Ｉ／Ｆ（インターフェース）２７が接続されている。
【００１２】
ＲＯＭ２３には、基本ソフトウェアであるＯＳ（Operating System）２８やアプリケーションプログラムであるＳＱＬ（Structured Query Language)バックアップＡＰＩ(Application Programming Interface)２９があらかじめ格納されている。
【００１３】
ＲＡＭ２４には、各ＰＯＳ端末１２から収集したデータや入力部２６を介して入力されたデータなどを一時的に格納するための各種メモリエリアを形成するとともに、ＣＰＵ２１のワーク領域等に用いられる。
【００１４】
ＨＤＤ装置２５には、アプリケーションプログラム（以下、アプリケーションという）３０とデータベースＤＢ３１が格納されている。
【００１５】
ＳＱＬバックアップＡＰＩ２９は、アプリケーション３０からＯＳ２８の提供する機能を利用可能とするためのアプリケーション・プログラム・インターフェースである。
【００１６】
また、ＳＱＬバックアップＡＰＩ２９は、アプリケーション３０とデータベースＤＢ３１とのインターフェースをなす。
【００１７】
ＳＱＬバックアップＡＰＩ２９は、アプリケーション３０からデータベースＤＢ３１にアクセスするためのＳＱＬ文が発行された場合、そのＳＱＬ文にしたがうデータベース処理をデータベースＤＢ３１に行わせる機能を有する。ＳＱＬバックアップＡＰＩ２９はまた、データベースアクセス処理の結果を表すＳＱＬ分をデータベースＤＢ３１から受け取った場合、そのＳＱＬ文を要求元であるアプリケーション３０に返す機能を有する。
【００１８】
上記ハードウェア構成の係るストアーコントローラ１１は、あらかじめ設定された業務スケジュールにしたがいアプリケーション３０を選択実行して、各種ＰＯＳ業務の情報処理を順次遂行する。
【００１９】
図３は、本実施の形態に係わるストアーコントローラ１１のデータベースＤＢから他のデータベースＤＢへのバックアップと運用中のデータベースＤＢに障害発生した時点のアクセスルートの説明図である。
【００２０】
図３に示すように、たとえば、日毎に、データを深夜の所定の時間帯でデータベースＤＢ３１ａから他のデータベースＤＢ３１ｂへバックアップ（退避）させる。
【００２１】
その後、業務データの運用を開始して発生データ３２を各プロセスについてＳＱＬバックアップＡＰＩ２９でＳＱＬ文を作成し、そのＳＱＬ文を抽出してＡＰＩを介して、ＨＤＤ装置２５のハードディスクＨＤにＳＱＬ文にＡＰＩを付加して各プロセスのデータをカプセル化して時系列的に処理し順次保存していく。
【００２２】
つぎに、業務中において、データベースＤＢ３１ａに障害が発生したときには、前回バックアップした時刻を基準にして、その時点まで戻り保存されているＳＱＬ文を読み出し順次実行しながら発生した追加データ３３をデータベースＤＢ３１ｂにバックアップし復旧（レストア）することができる。
【００２３】
このように、ＳＱＬバックアップＡＰＩ２９によりＡＰＩ内にカプセル状態でデータを保存することによりデータベースＤＢ３１のバックアップ後も店舗運用を続行させ障害が発生しても、障害直前までのデータを復旧することができる。
【００２４】
上記のように構成された本発明の一実施形態の動作について図４のフローチャートを参照して説明する。この実施の形態では、ストアーコントローラ１１のデータベースＤＢ３１のバックアップをＨＤＤ装置２５に作成する処理を一例に説明する。
【００２５】
まず、ＣＰＵ２１からなる制御部の全体処理の動作の流れを説明する。
【００２６】
Ａ：ステップＳ１１としてデータをＨＤＤ装置２５のデータベースＤＢ３１にバックアップする。
【００２７】
ステップＳ１２としてデータベースＤＢ３１の操作業務か否かを調べる。データベースＤＢ３１の操作業務であれば、Ｂ：ステップＳ１３としてデータベースＤＢ３１の操作を行う場合はＳＱＬバックアップＡＰＩ２９を使用する。
【００２８】
Ｃ：ステップＳ１４としてＳＱＬバックアップＡＰＩ２９はＳＱＬ文をＨＤＤ装置２５に保存する。
【００２９】
ステップＳ１５としてデータベースＤＢ３１の障害発生か否かを調べる。障害が発生した場合、Ｄ：ステップＳ１６としてデータベースＤＢ３１の障害後の復旧でバックアップをレストアする。
【００３０】
以下、ＣＰＵ２１のＡからＥの各動作についての図５から図９のフローチャートを参照して説明する。
【００３１】
図５は、Ａ：のデータを保存する動作についてのフローチャートを参照して説明する。
【００３２】
ステップＳ２１としてＨＤＤ装置２５のデータベースＤＢ３１に保存実行する。
【００３３】
ステップＳ２２としてＳＱＬ保存ファイルを削除する。
【００３４】
ステップＳ２３としてＳＱＬ保存ファイルを作成する。
【００３５】
図６は、Ｂ：のデータベースＤＢ３１にアクセスするＳＱＬ対象判断の動作についてフローチャートを参照して説明する。
【００３６】
ステップＳ３１としてデータベースＤＢ３１のアクセスし、ＳＱＬの対象であるかを判断する。
【００３７】
ステップＳ３２として更新文か否かを調べる。更新文（Ｃｒｅａｔｅ／Ｄｅｌｅｔｅ／Ｉｎｓｅｒｔ／Ｕｐｄａｔｅ）であるときには、ステップＳ３３としてＳＱＬ文を一時保存ファイルに生成する。
【００３８】
ステップＳ３４としてＳＱＬ文を一時保存ファイルに書き込みする。
【００３９】
図７は、Ｃ：のＳＱＬ確定判断の動作についてフローチャートを参照して説明する。
【００４０】
ステップＳ４１としてデータベースＤＢ３１にアクセスし、ＳＱＬ文を確定判断する。
【００４１】
ステップＳ４２としてＳＱＬ確定文か否かを調べる。確定文（Commit)ならステップＳ４３としてＳＱＬ文一時保存ファイルをＳＱＬ文保存ファイルへ複数のデータを１つにまとめる（マージする）。
【００４２】
ステップＳ４４としてＳＱＬ文一時保存ファイルを削除する。
【００４３】
図８は、Ｄ：のデータ復旧の動作についてのフローチャートを参照して説明する。
【００４４】
ステップＳ５１としてＨＤＤ装置２５からデータベースＤＢ３１を復旧実行する。
【００４５】
図９は、Ｅ：の差分復旧の動作についてフローチャートを参照して説明する。
【００４６】
ステップＳ６１としてＳＱＬ文の保存ファイルからＳＱＬ文を順次実行し差分を復旧する。
【００４７】
本発明の実施形態のＣＰＵ２１の制御手順によりデータベースＤＢ３１に障害発生時には、全体データベースバックアップ時点からその障害が発生し時点までのデータをプロセス毎にＳＱＬバックアップＡＰＩ２９によりＳＱＬ文で作成し、ＨＤＤ装置２５に保存してデータベースＤＢ３１に復旧することができる。
【００４８】
また、データベース全体を保存するのではなく、データのプロセスをリアルタイムにＳＱＬ文で保存し、ＳＱＬで復旧することにより、データベースバックアップ後に運用されたデータもレストア可能になる。
【００４９】
以上説明したように、本発明は前記実施の形態に限定されるものではなく、実施の段階ではその趣旨を逸脱しない範囲で種々に変形することが可能であるのは勿論である。
【図面の簡単な説明】
【００５０】
【図１】本発明に係る一実施の形態のＰＯＳシステムを示すシステム構成図。
【図２】同実施の形態に係るストアーコントローラ１１の構成を示すブロック図。
【図３】同実施の形態に係るストアーコントローラ１１の業務データ運用中のデータベースに障害の発生時のアクセスルート説明図。
【図４】同実施の形態に係る全体の動作についてのフローチャート図。
【図５】同実施の形態に係るＡ：のデータを保存する動作についてのフローチャート図。
【図６】同実施の形態に係るＢ：のデータベースにアクセスするＳＱＬ対象判断の動作についてフローチャート。
【図７】同実施の形態に係るＣ：のＳＱＬ確定判断の動作についてフローチャート。
【図８】同実施の形態に係るＤ：のデータ復旧の動作についてのフローチャート。
【図９】同実施の形態に係るＥ：の差分復旧の動作についてフローチャート。
【符号の説明】
【００５１】
１１…ストアーコントローラ、２１…ＣＰＵ（制御部）、２３…ＲＯＭ、２４…ＲＡＭ、２５…ＨＤＤ装置、２９…ＳＱＬバックアップＡＰＩ、３０…アプリケーションプログラム、３１…データベースＤＢ。
【図１】
2006244394.tif 000003
【図２】
2006244394.tif 000004
【図３】
2006244394.tif 000005
【図４】
2006244394.tif 000006
【図５】
2006244394.tif 000007
【図６】
2006244394.tif 000008
【図７】
2006244394.tif 000009
【図８】
2006244394.tif 000010
【図９】
2006244394.tif 000011