Sql-Server
獲取日期範圍內未修改的數據庫列表 - SQL server
我們能否在伺服器中獲得過去兩個月未修改的數據庫列表的輸出,並且基於此我們必須刪除所有這些數據庫。
我嘗試過以下查詢:–確定上次訪問使用者數據庫的時間–
SELECT DatabaseName ,MAX(LastAccessDate) DatabaseLastAccessedOn FROM ( SELECT DB_NAME(database_id) DatabaseName ,last_user_seek ,last_user_scan ,last_user_lookup ,last_user_update FROM sys.dm_db_index_usage_stats ) AS Pvt UNPIVOT ( LastAccessDate FOR last_user_access IN ( last_user_seek ,last_user_scan ,last_user_lookup ,last_user_update ) ) AS Unpvt GROUP BY DatabaseName HAVING DatabaseName NOT IN ('master' ,'tempdb' ,'model' ,'msdb') ORDER BY 2
需要查詢以查找過去 2 個月未訪問/修改的數據庫並將其刪除。我有 SQL Express 版。
我們能否在伺服器中獲得過去兩個月未修改的數據庫列表的輸出,並且基於此我們必須刪除所有這些數據庫。
無論您在網際網路上發現什麼,100% 確定的唯一方法是執行審計/跟踪/等。針對伺服器並檢查每個數據庫正在接收的流量,因為某些系統程序將更新數據庫並且需要在繼續之前過濾掉(審計/跟踪/等應該能夠自行過濾)。
可能的選項:
如果您不需要絕對 100% 確定,那麼可以隨意選擇 Internet 上的任何其他方法,例如索引使用 DMV、緩衝池中的頁面、上次訪問日期等。