[DataWeb] MSSQLのトランザクションログの削除と圧縮方法

SQLServerデータベースはトランザクションログの肥大化を防ぐため、定期的にシステムにてトランザクションログのバックアップを採取しております。
(トランザクションログのバックアップを取得する事により ログ領域を解放し再利用可能となり、不要なログファイルの肥大化を防ぎます)

正常にトランザクションログが作成されている場合、以下の処理を行う事で、バックアップの関連性が崩れてしまいます。
その為、まずは以下の処理について、弊社が推奨するものではございませんのでご留意ください。

また、データベースユーザのロール(役割)において、初期設定は、セキュリティを考慮した内容となっており、
初期に付与されているロールでは、以下の操作を行っていただく事は出来ません。

データベースの圧縮を行われる場合は、作成されたデータベースユーザのロールに[db_owner]の権限が必要となります。
権限の付与は、MSSQLの管理ツール(myLittleAdmin)上で行えますが、ご利用のお客様のご判断で行ってくださいますようお願いいたします。
特に、guestユーザに対しては、不用意にロールを付与しますと、他のデータベース利用者からも
データベースが閲覧可能になってしまったり、編集ができるようになってしまいますのでお気をつけください。
(通常は、guestユーザに対しロールは付与しません)


MSSQLのトランザクションログの削除ならびに圧縮作業は、myLittleAdminからお客様にて行っていただけます。

以下に大まかな手順をご案内いたします。

まず、コントロールパネルより管理ツール(myLittleAdmin)にログインをします。

 

続いて、[ツール]-[新しいクエリ]の順に開き、ログ切り捨てのクエリを入力します。クエリは次のようにご入力ください。

BACKUP LOG [対象のデータベース名] TO DISK=N’NUL’

 

トランザクションログの消去が完了しました。エラーが表示された場合には、クエリの構文に誤りがある恐れがございます。内容を確認のうえ、適宜修正をしてください。続いて、データベースの圧縮に進みます。

 

[ツール]-[データベース圧縮を]開きます。次に、対象のデータベース名を[データベース]のリストから選択します。選択後、[未使用領域の開放前...]にチェックをつけ、[圧縮後のファイル...]の欄に"0"を入力します。入力後、[データベース圧縮]ボタンをクリックします。

 

圧縮が完了しました。

なお、作業後のデータベースおよびトランザクションログの使用領域は、
[ツール]-[新しいクエリ]から、次のクエリを実行することでご確認いただけます。

SELECT * FROM sys.database_files

※作業後、上のクエリで確認してもサイズが小さくなっていない場合には、
本手順を再度実行したうえで改めて確認をお試しくださいませ。

  • 61 人がこの投稿を評価しています
回答は役立ちましたか?

関連記事

[DataWeb] データベースの追加方法

データベースの追加方法のご案内です。1.コントロールパネルにログインする。2.左メニュー[データベース]をクリックし、[データベースを追加]をクリックする。3.追加するデータベースの詳細を入力し...

[DataWeb] データベースの削除方法

データベースの削除方法のご案内です。1.コントロールパネルにログインする。2.左メニュー[データベース]より、削除したいデータベースの[データベースを削除]をクリックする。3.[はい]をクリック...

[DataWeb] myLittleAdminの接続方法

myLittleAdminの接続方法のご案内です。1.コントロールパネルにログインする。2.該当のSQLSeverの右上にある[myLitteleAdmin]をクリックする。3.myLittle...

[DataWeb] phpMyAdminの接続方法

phpMyAdminの接続方法のご案内です。1.コントロールパネルにログインする。2.該当のMySQLの右上にある[phpMyAdmin]をクリックする。3.phpMyAdminに接続します。

[DataWeb] データベースユーザーの管理

データベースユーザの作成やユーザパスワードの変更などを行う事ができます。...