データベースの起動の方法について
Oracleデータベースは非常に豊富な機能を持ったデータベースソフトです。
その機能についての知識を問われる資格試験があります。
一番ランクが低いOracle Master Bronzeですが、SQLとDBAの2つの試験に合格してはじめてBronzeの認定がもらえます。
SQLはデータベースからデータを取得する言語の文法についての分野で、DBAはデータベースの管理者として必要なデータベースの内部の構造や操作方法についての分野です。
今回はDBAの範囲の中から、データベースの起動の方法についてご紹介します。
Oracleデータベースは起動して利用できる状態と停止している状態の他に2つの状態があります。
簡単に表現するなら、中途半端に起動している状態です。
では、その状態とその状態がなぜ必要なのかを見て行きましょう。
状態の名称 | Oracleの状態 |
SHUTDOWN | 停止の状態 |
NOMOUNT | データベースが認識されていない状態 |
MOUNT | データベースが認識されているが利用していない状態 |
OPEN | 通常運用の状態 |
OPENの状態は全ての機能が使える通常運用の状態で、データのファイルの読み書きが行われています。
このデータファイルに対するデータの復旧操作などは、この運用状態で行うべきではありません。
よって、データファイルを認識している状態ではあるけれどもまだ利用していない(利用できない)状態が必要です。それがMOUNTの状態です。
さらに、MOUNTの状態ではデータベースを認識しているが利用はできない状態ですが、そのデータベース自体について何か操作をしたい場合は、認識して関連付けされてしまっている状態ではできません。
そこで、データベースとの関連付けが行われる前に、データベースに対する基本的な機能だけが利用可能な状態が必要なのです。それがNOMOUNTの状態です。
通常の起動をした場合は、SHUTDOWNの状態から、内部的にNOMOUNT、MOUNT、OPENと段階を踏んで起動します。
管理者は特別に、例えば「MOUNTの状態まで起動し、復旧作業を行う」という事が可能という事です。もちろん作業後、OPENの状態に続けて遷移可能です。
データベースの停止の方法について
Oracleデータベースは非常に豊富な機能を持ったデータベースソフトです。
その機能についての知識を問われる資格試験があります。一番ランクが低いOracle Master Bronzeですが、SQLとDBAの2つの試験に合格してはじめてBronzeの認定がもらえます。
SQLはデータベースからデータを取得する言語の文法についての分野で、DBAはデータベースの管理者として必要なデータベースの内部の構造や操作方法についての分野です。
今回はDBAの範囲の中から、データベースの停止の方法についてご紹介します。
Oracleデータベースは緊急時やメンテナンス時に停止させる必要があります。
データベースはワードやエクセルなどのソフトの様に自分だけが利用しているものではなく、複数人が同時に編集可能です。
よって、その現在の利用者をどうするかによって停止の方法が異なり、4種類あります。では、その違いを見て行きましょう。
NORMAL
一番安全な停止方法です。接続者(データベース利用者)が全員切断するのを待ちます。新規の接続は受け付けませんが、全員が切断するのを待たなければなりません。
TRANSACTIONAL
一連の更新作業中の人は終わるまで待ちますが、そうではない人(更新が一段落ついた人や確認作業をしている人)は切断してしまいます。
データベースとしては、更新作業中のデータが更新されるのを待ってから停止します。
IMMEDIATE
一連の更新作業中の人も切断してしまいます。途中まで作業中の更新内容はキャンセルされます。
データベースとしては更新作業中のデータは失われますが、強制的にキャンセルする事により、データベース内の状態としては矛盾のない整合性の取れた状態で停止します。
ABORT
こちらも一連の更新作業中の人も切断しますが、途中までの作業内容のキャンセルはされません。更新もされません。中途半端な状態ですが、そのまま停止します。
では更新内容はどうなってしまうのかというと、次回起動時に、履歴情報から自動復旧されます。しかし、更新途中の場合は確定がなされていない事から、更新作業中だった内容は破棄されます。
このように、データベースの管理者として必要な知識を身につけている事を証明する資格がOracle Bronze DBAです。
上位資格にSilver、Gold、Platinumがあります。