SQL Server 2005では、誰かがデータベースを最後にクエリした時刻を簡単に特定できますか。データベースに最後にアクセスした時間はどうでしたか?
答えて
簡単にはできませんが、SQL Serverのログ機能を有効にした場合は、ソフトウェアを使用してログを調べて、最後のクエリがいつ発生したか、およびその内容を確認できます。
あなたは、監査、または事前に設定SQL Serverのトレースを持っている必要があり-Adam
。
SQL Serverはログオン試行のイベント情報を記録でき、エラーログを確認することで を表示できます。 SQL Serverの監査レベル をオンにする
は、SQL Serverの Enterprise Managerを使用したすべて/成功した接続の監査を有効にするには、次の手順を実行します。
は、サーバーグループを展開します。 サーバーを右クリックし、[プロパティ]をクリックします。 [セキュリティ]タブの[監査レベル]で、すべての/ successなどをクリックします( オプションが必要です)。
あなたは
SELECT
last_user_seek = MAX(last_user_seek),
last_user_scan = MAX(last_user_scan),
last_user_lookup = MAX(last_user_lookup),
last_user_update = MAX(last_user_update)
FROM
sys.dm_db_index_usage_stats
WHERE
[database_id] = DB_ID()
この設定を有効にするサーバーを停止し、再起動する必要があります。この方法では1つの警告は、SQL Serverを再起動するたびにDMVの情報がクリアされ、ゼロにするということです。
MySQLtipsでこれが見つかりました - 私のために働いた。
SELECT d.name,
last_user_seek = MAX(last_user_seek),
last_user_scan = MAX(last_user_scan),
last_user_lookup = MAX(last_user_lookup),
last_user_update = MAX(last_user_update)
FROM sys.dm_db_index_usage_stats AS i
JOIN sys.databases AS d ON i.database_id=d.database_id
GROUP BY d.name
データベースコンテキストごとの結果をしたいし、結果セットの最初にデータベース名を含めるしたくない場合は、この修正版を使用してください:ジェームズ・アレンの答えに拡大すること
select d.name, x1 =
(select X1= max(bb.xx)
from (
select xx = max(last_user_seek)
where max(last_user_seek) is not null
union all
select xx = max(last_user_scan)
where max(last_user_scan) is not null
union all
select xx = max(last_user_lookup)
where max(last_user_lookup) is not null
union all
select xx = max(last_user_update)
where max(last_user_update) is not null) bb)
FROM master.dbo.sysdatabases d
left outer join
sys.dm_db_index_usage_stats s
on d.dbid= s.database_id
group by d.name
。ます。http:// stackoverflowの上記の方法と同様に
また、JOINなしでこれを行うこともできます。 SELECT DB_NAME(database_id )、 last_user_seek = MAX(last_user_seek)、 last_user_scan = MAX(last_user_scan)、 last_user_lookup = MAX(last_user_lookup)、 last_user_update = MAX(last_user_update) FROM sys.dm_db_index_usage_stats GROUP BY database_id ORDER BY DB_NAME(database_id) –
、単に特定のデータベースIDの単一の値として結果を得るために(この例では、それは6
です)
select max(LastAccess)
from (
SELECT last_user_seek as LastAccess FROM sys.dm_db_index_usage_stats WHERE last_user_seek is not null and [database_id]=6
union
SELECT last_user_lookup as LastAccess FROM sys.dm_db_index_usage_stats WHERE last_user_seek is not null and [database_id]=6
union
SELECT last_user_seek as LastAccess FROM sys.dm_db_index_usage_stats WHERE last_user_seek is not null and [database_id]=6
union
SELECT last_user_update as LastAccess FROM sys.dm_db_index_usage_stats WHERE last_user_seek is not null and [database_id]=6
) UserAccess
- 1. 「ファイルを右クリックしていますか?」で最後にアクセスした時間が更新されますか?
- 2. 実行時にjavaを使用してデータベースにアクセスするにはどうしたらいいですか?
- 3. デスクトップアプリケーションからデータベースにアクセスするにはどうしたらよいですか?
- 4. Redshiftは最後にアクセスしたタイムスタンプを保存しますか?
- 5. Railsでmysqlデータベースにアクセスするにはどうしたらいいですか?
- 6. どのようにしてレディスキーの最後のアクセス時間を見つけることができますか?
- 7. アクセス時にボタンをクリックした後、最後に送信された電子メールを保存します
- 8. レシピでノードをチェックインした最後の時間を取得
- 9. 各時間の最後の12時間のデータベース値を集計します。
- 10. Steam - ログイン後に最後にアクセスしたページをリダイレクト
- 11. ディレクトリ内の最後にアクセスした10個のファイルをunixでどのように表示しますか?
- 12. Document.readyまたは一定時間後に実行しますか?
- 13. ページモードのDRAMで連続した値にアクセスする最大時間の計算
- 14. 待ち時間を超過した後、mysqlトランザクションはどうなりますか?
- 15. Rails 3 - 最後のX日間テーブルとフィルターに参加するにはどうしたらいいですか?
- 16. データベース設計。 PostgreSQLの各カラムで最後に変更した時間を取得する
- 17. ユーザーはどのシーンを最後に検出しましたか?
- 18. どうすれば入手できますか?ファイルが最後に開かれた時間
- 19. 数時間後にAzureデータファクトリでカスタムアクティビティが失敗しました
- 20. SSIS 2012をインストールした後、どのようにデータベースに接続しますか?
- 21. 私はPHPで24時間後に何かを表示したいですか?
- 22. Swiftで時間を処理した後、アクティビティインジケータを却下するにはどうすればよいですか?
- 23. 等しい時間間隔の後にデータベースからデータを取得します。
- 24. 最後にセッションにアクセスしますか?
- 25. App Storeに間違ったアプリを送信した後はどうしたらいいですか?
- 26. 最後の時間から
- 27. Webアプリケーションのホームアイコンは最後に訪問したページへのアクセス
- 28. 時間の最後に衝突検出を行うには?
- 29. リモートリポジトリをクローンした後、IntelliJ IDEAでどのようにアクセスできますか?
- 30. ソートリストビューは最後に変更されたsqliteでどのように満たされましたか?
これはあなたに非常によく似質問です。 SQL Server 2005/525587#525587 – MicSim