ハードディスクに空きがなくなります
質問:OnTimeを利用しているとディスクの空きがなくなります。なぜでしょうか?
SQL Serverのログが肥大化していませんか?
SQL Serverには復旧モデルという設定があり組織のポリシーに沿った適切な設定しないとログが肥大化します。その結果、運用によってはデータベースに使用しているドライブディスクを逼迫させてしまいます。
SQL Serverの復旧モデルには3種類あり、それぞれ単純(Simple)、完全(Full)、一括ログ(Bulk logged)という名称です。
このうち完全と一括ログはトランザクションログをバックアップするモデルです、一括ログモデルではトランザクションログを定期的に切り捨てるため肥大化はしません。しかし完全モデルではバックアップを行うまでトランザクションログの切り捨ては行われません。データベースのバックアップを運用として行っていればトランザクションログが肥大化することはありませんが、バックアップが運用されていない場合はトランザクションログが肥大化することでディスクが逼迫してしまいます。
ちなみにShopバンドルのサイレントインストーラでインストールされるSQL Expressの場合は、単純モデルが規定値になっています。
Shopのお勧めは単純モデルです。
OnTimeはExchangeのイベントデータは常にExchange Serverから取得し、ユーザー操作を直接データベースに書き込みません。なので万が一バックアップから復旧させた場合でもExchangeと再同期を行うことで完全にシンクロします。
注意しないといけないデータは、OnTimeで作成する情報たちです。例えば、管理者が設定する、ドメイン接続設定、表示グループ、ロール権限、フロントエンド設定、また個人が作成する表示用グループなどになります。これは頻度多くは変更なされない情報と考えます。なのでこれらのデータの更新を守りたい頻度でバックアップしておけば、通常運用では単純モデルで十分と考えています。
ちなみにOnTimeのアップグレードの手順の中でも自動的にバックアップを取っています。なのでOnTimeの新バージョンのリリースと同時にアップグレードしていただいていると、年に数回はバックアップが取れていることになります。
復旧モデルの単純への変更方法
- 作業にはSQL Server Management Studioを必要としますのでインストールされていない場合は先にインストールしてください。
- OnTimeサーバー(Apache Tomcat・・・で始まるサービス)をWindowsサービスから停止します。これによりSQLのOnTime系データベースへ接続するアカウントはなくなります。
- SQL Server Management Studioを使用して OnTimeサーバーのインスタンスへ接続します。
- オブジェクト エクスプローラーにて「データベース」を展開します。OnTimeは下図の4つのデータベースで動作します。順不同でそれぞれに操作を実行してください。
- OnTimeサーバーのデータベースを右クリックし、[プロパティ]をクリックします。
- [オプション]ページを選択し、復旧モデルを「完全」から「単純」に変更し、[OK]をクリックします。
- 全てのデータベースの復旧モデルの変更が完了しましたら、SQL Server Management Studioを終了します。
- OnTimeサーバー(Apache Tomcat・・・で始まるサービス)をWindowsサービスから実行します。
以上