如何查看访问RDS实例的IP有哪些

更新时间:
复制 MD 格式

本文介绍通过控制台会话管理和SQL命令查看访问RDS实例的IP地址的方法。您可以获取到当前正在连接到RDS实例的所有用户信息及用户主机IP,以及历史已建连接记录,帮助您更好地管理和监控数据库访问情况。

方法一:通过控制台会话管理查询

您可以登录RDS控制台或DAS控制台,查看RDS实例正在使用中以及历史已建连接会话详情。

查询正在使用中的连接

说明

该方式仅支持RDS MySQLRDS PostgreSQL实例。

通过RDS控制台

  1. 登录RDS控制台并进入RDS实例详情页,在左侧导航栏选择自治服务一键诊断

  2. 会话管理页面下,通过筛选全部会话,即可查看正在连接到RDS实例的所有用户信息及用户主机IP。

  3. 您还可以在会话管理页面最底部,查看到正在连接到RDS实例的所有会话的统计数据。

    会话统计包含概要(会话总数、运行中会话总数、运行中会话最长时间)、按用户统计按访问来源统计按数据库统计四个维度,各维度展示活跃数总数

通过DAS控制台

  1. 登录DAS控制台,在左侧导航栏中,单击实例监控

  2. 找到目标实例,单击实例ID,进入目标实例详情页。

  3. 在实例详情页的左侧导航栏,单击实例会话

  4. 会话管理页面下,通过筛选全部会话,即可查看正在连接到RDS实例的所有用户信息及用户主机IP。

  5. 您还可以在会话管理页面最底部,查看到正在连接到RDS实例的所有会话的统计数据。

查询历史已建连接

说明

该方式仅支持RDS MySQL实例。

通过RDS控制台

  1. 登录RDS控制台并进入RDS实例详情页,在左侧导航栏选择自治服务SQL洞察和审计

  2. 审计页面下,通过筛选时间范围,并选择操作类型LOGIN,即可查看连接到该RDS实例的所有用户信息及用户主机IP。

通过DAS控制台

  1. 登录DAS控制台,在左侧导航栏中,单击实例监控

  2. 找到目标实例,单击实例ID,进入目标实例详情页。

  3. 在实例详情页的左侧导航栏,单击请求分析 > SQL洞察和审计

  4. 审计页面下,通过筛选时间范围,并选择操作类型LOGIN,即可查看连接到该RDS实例的所有用户信息及用户主机IP。

方法二:通过SQL命令查询

RDS MySQL实例

连接RDS MySQL实例后,执行如下SQL,即可查询特定用户的当前活动会话。如需查询历史连接记录,请通过方法一:通过控制台会话管理查询

SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER='用户名';

查询结果包含 IDUSERHOSTDBCOMMANDTIMESTATEINFO 列,其中 COMMANDQuery 表示会话正在执行查询,为 Sleep 表示会话处于空闲状态。

RDS SQL Server实例

连接RDS SQL Server实例后,执行如下SQL,即可获取与此实例建立的所有连接的详细信息。查询结果包括连接时间、IP地址等,参数详情请参见微软官方文档

SELECT
  DEC.CONNECT_TIME,
  DEC.CLIENT_NET_ADDRESS,
  SP.LOGINAME,
  SP.STATUS,
  SP.HOSTNAME,
  SP.PROGRAM_NAME,
  DES.CLIENT_INTERFACE_NAME,
  DES.LAST_REQUEST_START_TIME,
  DES.ORIGINAL_LOGIN_NAME,
  DB_NAME (DES.DATABASE_ID) AS DBNAME,
  SP.LASTWAITTYPE
FROM
  SYS.DM_EXEC_CONNECTIONS AS DEC
  INNER JOIN SYS.SYSPROCESSES AS SP ON SP.SPID = DEC.SESSION_ID
  INNER JOIN SYS.DM_EXEC_SESSIONS AS DES ON SP.SPID = DES.SESSION_ID
WHERE
  DEC.SESSION_ID > 50
  AND SP.PROGRAM_NAME NOT IN('DBAgent')
  AND SP.HOSTNAME <> HOST_NAME()
  AND SP.LOGINAME NOT IN('aurora', 'rds_service','NT AUTHORITY\SYSTEM','NT AUTHORITY\NETWORK SERVICE')

RDS PostgreSQL实例

请参见RDS PostgreSQL实例如何查看本地IP

相关操作

  • 如需查询RDS实例上的用户,可在实例详情页的账号管理页面查看。如需修改用户账号权限,请参见修改MySQL账号权限修改SQL Server账号权限修改PostgreSQL账号权限

  • 如果您准备通过命令行或客户端登录数据库,则需要预先将ECS或本地设备的IP地址添加到RDS实例的IP白名单中,再根据访问类型获取实例对应的内网连接地址或外网连接地址后,才能正常访问实例。您可在实例详情页的白名单与安全组页面查看已添加的IP,或新增需要访问实例的IP。相关操作,请参见设置MySQL白名单设置SQL Server白名单设置PostgreSQL白名单

    该页面包含白名单设置安全组白名单模板三个页签,在白名单设置页签中可按分组查看和管理已添加的IP白名单。

相关文档

适用引擎

  • RDS MySQL

  • RDS SQL Server

  • RDS PostgreSQL