【Oracle Database】2017年1月1日実施「うるう秒」の対応は大丈夫ですか?:データベースサポート最前線の現場から(3)(2/2 ページ)
データベース管理システムの運用でトラブルが発生したらどうするか。データベースサポートスペシャリストが現場目線の解決Tipsをお届けします。今回は「2017年1月1日うるう秒の対応ポイント」を解説します。
うるう秒でずれたシステムクロックの調整は、「Slew方式」で行う
一方、OSがうるう秒をサポートしていないシステムにおいても、うるう秒の実施によってシステムクロックが実際の時刻より1秒進んだ状態になります。このため、時刻調整の作業が必要になります。時刻調整の方法には、時刻を瞬間的に戻す「Step方式」と、NTPサーバとの時間差を徐々に縮めることによって、時刻が戻ることを防ぎながら時刻を修正する「Slew方式」があります。
Step方式では時刻のずれを即座に修正します。作業自体は簡単ですが、今回のうるう秒の対応においては、時刻が逆進することになります。Oracle Database側では「時間が戻る」ことが想定されていないために、ここで意図しないトラブルに発展する可能性があります。
Oracle Databaseでは、データの一貫性を「SCN(System Change Numbers:コミット単位で振られる内部的なタイムスタンプ)」によって保証しているので、多くのデータに問題は発生しないと思われます。しかし、UNDOの保持期間のように、一部に時刻で管理される情報も存在します。また、Oracle RAC(Real Application Clusters)環境の場合は、ノード間のハートビートの動作に影響する可能性があります。
このため、大幅にシステム時刻がずれていないのであれば、時刻調整はデータベースのトランザクション処理などに影響を与えない「Slew方式」で行うことが推奨されます。
うるう秒対応まとめ
うるう秒の対応は、以下のポイントをチェックしましょう。
- システムのOSがうるう秒をサポートしているかを確認する
- OSやデータベースを始め、各アプリケーションの対応状況をあらためて確認する
- それを踏まえて、時刻合わせの方法を確認する。具体的には、Slew方式で行うことが推奨される
なお、My Oracle SupportにログインできるOracleユーザー向けに、以下の項目名で情報がまとまっています。併せて確認してください。
- うるう秒について
- システム時刻の変更にともなう注意点
筆者紹介
大野高志
株式会社アシスト サービス事業部 サポートセンター所属。2007年にアシスト入社後、Oracle Databaseのサポート業務に従事。現在はサポート業務の傍ら、未解決のトラブルを一つでも多く減らせるよう、サポートセンターに蓄積されている調査のノウハウを社内外に伝える活動を行っている。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- 時を欠ける症状−うるう秒から考えるサステナビリティ
「Java News.jp(Javaに関する最新ニュース)」の安藤幸央氏が、CoolなプログラミングのためのノウハウやTIPS、筆者の経験などを「Rundown」(駆け足の要点説明)でお届けします(編集部) - Linux時刻管理の仕組みと設定
本連載は、Linux 認定試験 LPICに対応しています。一般的なLinuxユーザーレベルのトピックは省略し、システム管理とサーバ管理の内容を取り上げています。また、LPIC対策だけでなく、関連するトピックについて系統的な理解を問う問題も出題しています。連載の特徴は、対象となるプログラムのバージョンを可能な限り明記していること、比較的新しくまとまった解説がまだ少ないトピック、重要だが理解しにくいトピックを優先して取り上げていることです。問題を解き、その解説を読むことにより実践でLinuxを活用できる力を身に付けます。 - 第1回 NTPとWindows時刻同期サービス
Windows OSは、複数のコンピュータ間でそれぞれの持っている時刻情報を同期させる機能を持っている。本連載ではWindowsシステム/ネットワークの管理者を対象に、この時刻同期機能の基本原理やWindows OSにおける設定方法、トラブルシューティングなどの方法を全4回で解説する。 - 障害発生! 問題切り分けはスピード勝負
Oracleデータベースの運用管理者は、突発的に直面するパフォーマンス障害にどうやって対処したらよいか。本連載は、非常に複雑なOracleのアーキテクチャに頭を悩ます管理者に向け、短時間で問題を切り分け、対処法を見つけるノウハウを紹介する。対象とするバージョンはOracle8から9iまでを基本とし、10gの情報は随時加えていく。(編集局) - それでは“ダメ”な「トラブル対応例」
本連載は、「Microsoft SQL Server」で発生するトラブルを「どんな方法で」「どのように」解決していくか、「SQL Serverで起こりがちなトラブル」を厳選して、具体的な対処方法を紹介していきます。第1回目は「トラブルを適切に対処するための考え方」を解説します。 - パフォーマンス向上の最短コースを知る
本連載では、Oracleデータベースのパフォーマンス・チューニングの中から、特にSQLのチューニングに注目して、実践レベルの手法を解説する。読者はOracleデータベースのアーキテクチャを理解し、運用管理の実務経験を積んでいることが望ましい。対象とするバージョンは現状広く使われているOracle9iの機能を基本とするが、Oracle 10gで有効な情報も随時紹介していく。(編集局) - そもそも、リレーショナルデータベースとは何か?
データベースを基礎から勉強し理解を深めていくことは簡単なことではありません。本連載では、データベースに対するハードルを少しでも低くするために、初心者の方に必要なデータベースの基本から、障害対策やチューニングといった実践に即した内容までを幅広く解説していきます。今回は、データベースの役割と、それを管理するソフトウェアであるDBMSの基本機能について解説します。【更新】