SQL サーバー (2005 年) でドライブ容量の問題が発生しており、テーブルでいくつかのクエリを実行したsys.allocation_units
ところ、26 GB のデータベース メール添付ファイルがあることがわかりました。どうやら、私たちmsdb
は数年間、何のクリーンアップもせずにこれを隠していたようです.
使用しようとしsysmail_delete_mailitems_sp
ましたが、ログがいっぱいになり、スペースの制限に達しています。このsys sprocを調べたところ、実際に実行しているのは実行中だけです
DELETE FROM sysmail_allitems
いくつかのパラメーターとエラー処理を使用します。これは、sysmail_xyz テーブルのコレクションから削除すると想定しているシステム ビューです。
この古いメール データは必要ありません。私たちがメールするものはすべて、アプリケーション層にすでに記録され、アーカイブされています。走ってもいいですか
TRUNCATE TABLE sysmail_allitems
それはビューですが、DELETEされているので、TRUNCATEもできるかどうか疑問に思っています。そうでない場合は、できるかもしれません
TRUNCATE TABLE sysmail_attachments
しかし、システムを壊すようなものを孤立させてしまうのではないかと心配しています。助言がありますか?