毎日、データベースの行の一部が自動的に削除されます。
ログ ファイルも削除されているため、誰がそれらのファイルを削除したかを確認できません。
何をすべきかわかりません。
SQL サーバーが運用前の場合は、ターゲット テーブルに対するすべての削除権限を削除して、誰が文句を言うかを待つだけで済みます。いずれにせよ、本番環境であってもこのテーブルで削除が許可されていない場合は、その機能を制限することをお勧めします。
さらに、テーブルに削除トリガーを追加して、監査を行ってみてください。ソース IP アドレス、ログインしているユーザー情報などを取得できます。必要に応じて、削除をロールバックすることもできます。
監査のためのトリガーの使用に関する優れた記事を次に示します。
編集:
テーブルのすべての削除を停止する場合は、次のトリガーを使用できます。
CREATE TRIGGER dbo.MyTable_Delete_Instead_Of_Trigger
ON dbo.MyTable
INSTEAD OF DELETE
AS
BEGIN
raiserror('Deletes are not allowed.', 16, 1)
END
すべての RPC Completed および SQL BatchCompleted イベントをキャプチャする DB に対して SQL プロファイラーを実行し、それを確認して、削除を実行しているものを見つけます。