![如何判断哪些内容正在访问我的 Azure SQL Server?](https://linux22.com/image/781175/%E5%A6%82%E4%BD%95%E5%88%A4%E6%96%AD%E5%93%AA%E4%BA%9B%E5%86%85%E5%AE%B9%E6%AD%A3%E5%9C%A8%E8%AE%BF%E9%97%AE%E6%88%91%E7%9A%84%20Azure%20SQL%20Server%EF%BC%9F.png)
我有一个想要退役的旧式 Azure SQL Server,但我们有很多没人知道的旧式系统。
我想确认哪些内容可以访问该服务器和/或其数据库。
它没有启用 Log Analytics 或 App Insights,没有任何类型的日志。我曾考虑启用它们,但我不知道应该设置它来收集哪种类型的日志,以及随后应该在日志中的哪个表中查找任何请求。
答案1
这里您将找到配置 Azure SQL 审计和日志分析所需的所有步骤,以及如何查询日志分析以了解谁访问了 Azure SQL 数据库。下面您将找到可用于日志分析的查询。
AzureDiagnostics
| where ResourceId == '/SUBSCRIPTIONS/<your subs ID>/RESOURCEGROUPS/<your rsrc grp>/PROVIDERS/MICROSOFT.SQL/SERVERS/<YOURSERVERNAME>/DATABASES/<YOURDBNAME>'
| project event_time_t, statement_s, succeeded_s, affected_rows_d, server_principal_name_s, client_ip_s, application_name_s, additional_information_s, data_sensitivity_information_s
| order by event_time_t desc
| take 100
您还可以使用以下查询查看 Azure SQL 数据库上具有活动会话的登录信息。您可以安排查询的执行并将结果保存到表中。
SELECT login_name, session_id, total_elapsed_time,
FROM sys.dm_exec_sessions