Oracle管理者のための「時間術」
2009/3/6
DBA 2.0の障害対応:誰がやっても4分以内!
「データベースにつながらなくなった。」
と連絡を受けた場合、DBA2.0はEnterprise Manager Database Controlに接続してデータベースインスタンスの状態を確認する。
●手順1 データベースインスタンスの状態を確認(21時23分10秒)状態を確認した結果、リスナーが落ちて接続できないのではなくデータベースインスタンスが落ちている表示になっている。単純に起動するだけで使用可能になるかもしれないので[起動]ボタンをクリックしてみたがエラーが発生して起動できないようだ。
そこで[リカバリの実行]ボタンをクリックしてインスタンスのリカバリを試みる。
●手順2 OSユーザーの指定なお、リカバリの実行時にOSユーザーの権限が必要な操作を行う場合があるので、ここではDBA権限のあるホストユーザー(OSユーザー)を指定しておき、アクセス権がないためにリカバリが実行できない、といったことがないようにしている。
●手順3 Oracleユーザを指定OSユーザーを記録させたら、Oracle Databaseと接続するのに必要なSYSDBA権限を持ったDBユーザーとパスワードでログインを行う。
●手順4 リカバリの実行リカバリの実行画面では、障害状況概要が[情報]として表示されている。
図7を見れば分かるとおり、1件のデータベース障害が検出されている。ここからは、データベースのマウントはできているが、オープンできないという状況が読み取れるはずだ。
ここからすぐに[アドバイスとリカバリ]ボタンまたは[リカバリ]ボタンをクリックしてリカバリを開始することもできるが、ここでは[データベース障害]リンクをクリックして障害状況の詳細を見てみよう。
●手順5 障害内容の確認(21時24分56秒)障害の詳細表示を見れば今回の障害の原因が「データファイル4: ’/u01/app/oracle/oradata/orcl/users01.dbf’が見つかりません」というエラーであることがすぐに分かる。
ここではファイルが見つからない理由や、なぜこのファイルが消えたのかまでは分からないが注、データベースが止まった理由として報告するのに必要な情報なので画面ハードコピーなどを取得しておくといい。
障害からのリカバリはバックアップおよびアーカイブログからRMAN(Recovery Manager)を使ってリカバリを行うことになるが、障害の内容によっては手動でリカバリが行える可能性もある。今回のケースでも図8で[アドバイス]ボタンをクリックして復旧方法のアドバイスを確認してみると、ファイルが見つからなかった理由がファイル名の変更かファイルの移動であるなら、元の位置の元のファイル名にして戻すことで手動リカバリが可能であるとの助言を得られる。
手動リカバリは無理なので、図9の[障害の再評価]ボタンではなく[アドバイスの続行]ボタンをクリックしてRMANを使ったリカバリ方法を表示する。
●手順7 リカバリスクリプトの表示RMANスクリプトが表示されるのでこれもハードコピーを保存しておけば、どのように復旧したかの説明資料になるだろう。この例では削除されたデータファイル4をrestoreしてからrecoverしようとしている。この2つのコマンドによりRMANはフルバックアップしたファイル、アーカイブログおよびREDOログから障害が発生する寸前の状態を復元しようと試みる。
●手順8 解決する障害の確認該当のRMANスクリプトにより復旧する障害を確認する。今回は、このスクリプトだけで障害すべてに対応できるようだ。問題ないようなので[リカバリ・ジョブの発行]ボタンをクリックしよう。
●手順9 リカバリの実行(21時26分09秒)リカバリの実行中画面に遷移したらあとはリカバリが終わるのを待つだけだ。
●手順10 リカバリの完了(21時26分14秒)リカバリが完了したら[データベースをオープン]ボタンをクリックすれば、データベースのオープンが行われて利用可能状態になる。
●手順11 データベースのオープン(21時27分01秒)作業時間の実測結果は、21時23分10秒〜27分01秒までなので時間的には4分で解決できたことになる。事前にRMANのコマンドなどの調査も不要でGUIの指示に従っての作業なので必須ノウハウのハードルも低いし、何より表示された結果を見て、次に投入するツールやコマンドを考えなくてもいいのは非常に「お手軽」だ。
3/4 |
Index | |
Oracle管理者のための「時間術」 | |
Page 1 ・かつてOracleメンテナンス担当は三重苦だった!? 9iまでの「職人芸」とそれ以降 ・Round0:障害対応対決〜両者のスペック DBA 1.0のシステム構成 DBA 2.0のシステム構成 |
|
Page 2 ・Round1:障害対応対決 DBA 1.0の障害対応:達人クラスで作業時間5分 |
|
Page 3 DBA 2.0の障害対応:誰がやっても4分以内! |
|
Page 4 ・Round2:ボトルネック調査対決 DBA 1.0の対応:「もう1回発生したら分かるかも」 DBA 2.0の対応:問題のクエリを即、究明 ・最後に:少ない作業コストで状態把握を |
Databaseフォーラム全記事インデックス |
- Oracleライセンス「SE2」検証 CPUスレッド数制限はどんな仕組みで制御されるのか (2017/7/26)
データベース管理システムの運用でトラブルが発生したらどうするか。DBサポートスペシャリストが現場目線の解決Tipsをお届けします。今回は、Oracle SE2の「CPUスレッド数制限」がどんな仕組みで行われるのかを検証します - ドメイン参加後、SQL Serverが起動しなくなった (2017/7/24)
本連載では、「SQL Server」で発生するトラブルを「どんな方法で」「どのように」解決していくか、正しい対処のためのノウハウを紹介します。今回は、「ドメイン参加後にSQL Serverが起動しなくなった場合の対処方法」を解説します - さらに高度なSQL実行計画の取得」のために理解しておくべきこと (2017/7/21)
日本オラクルのデータベーススペシャリストが「DBAがすぐ実践できる即効テクニック」を紹介する本連載。今回は「より高度なSQL実行計画を取得するために、理解しておいてほしいこと」を解説します - データベースセキュリティが「各種ガイドライン」に記載され始めている事実 (2017/7/20)
本連載では、「データベースセキュリティに必要な対策」を学び、DBMSでの「具体的な実装方法」や「Tips」などを紹介していきます。今回は、「各種ガイドラインが示すコンプライアンス要件に、データベースのセキュリティはどのように記載されているのか」を解説します
|
|