本文中含有需要您注意的重要提示信息,忽略该信息可能对您的业务造成影响,请务必仔细阅读。
PolarDB MySQL版的SQL洞察功能已升级为SQL洞察和审计。SQL洞察和审计由数据库自治服务DAS提供,在全量请求和安全审计的基础上,融合了搜索、SQL洞察、安全审计以及流量回放和压测等功能,帮助您更好地获取SQL语句的具体信息、排查各种性能问题、识别高危风险来源、验证实例规格。
背景信息
开启SQL洞察和审计功能可以记录所有DQL、DML和DDL操作信息,这些信息是通过数据库内核输出,对系统CPU消耗极低。
前提条件
如果是RAM用户,使用搜索功能时,需要为RAM用户授予AliyunPolardbReadOnlyWithSQLLogArchiveAccess权限。如何为RAM用户授权,请参见创建和管理RAM用户。
您也可以通过自定义权限策略授予RAM用户使用搜索(包含导出)功能的权限,详情请参见通过自定义权限策略授权RAM用户使用SQL洞察和审计的搜索(包含导出)功能。
支持的地域
开启DAS企业版后,才可以使用企业版提供的SQL洞察和审计功能,不同的企业版支持的地域不同。各个企业版支持的地域请参见各个版本支持的数据库和地域。
功能介绍
费用
开启DAS企业版后,才可以使用该企业版提供的SQL洞察和审计功能,不同的企业版的计费请参见计费概览。
如果数据库实例在SQL洞察升级为SQL洞察和审计之前已开启了SQL洞察功能,则费用由PolarDB MySQL版侧收取。详情请参见SQL洞察计费规则(可选)。
如果您使用的是DAS企业版V3,则费用全部由DAS侧收取。
开通SQL洞察和审计
登录PolarDB控制台。
在左侧导航栏单击集群列表。
在左上角,选择集群所在地域。
找到目标集群,单击集群ID。
在左侧导航栏中,选择 。
单击开启SQL洞察。
如果您当前的阿里云账号未开通DAS企业版,请按照界面提示,开通DAS企业版。
在右侧页面中单击对应功能页签即可查看相关信息。
区间查看:选择需要查看SQL洞察结果的时间范围,您可以查看选定时间范围内所有SQL的执行耗时分布、执行耗时、执行次数。您还可以在全量请求统计区域内查看选定时间范围内所有SQL的详细信息,并可以将其导出到本地。
说明最多支持导出1000条SQL日志,如果您需要获取时间范围更大、数量更多的SQL日志,可以通过搜索(审计)功能。
对比查看:选择需要对比SQL洞察结果的时间点,您可以查看所有SQL执行耗时分布、执行耗时、执行次数的对比结果。您还可以在请求对比列表区域内查看详细的对比结果。
来源统计:选择需要统计SQL来源的时间范围,你可以查看选定时间范围内所有SQL的来源信息。
SQL Review:对选定区间与基准区间内的数据库实例进行workload分析,并且对数据库实例中运行的SQL进行深度分析,展示数据库实例的索引优化建议、SQL改写建议、TOP SQL、新增SQL、失败SQL、SQL特征分析、执行变化SQL、性能恶化SQL和TOP流量表。详情请参见SQL Review。
相关SQL识别:选择需要查看的指标,单击分析按钮,经过1~5分钟的时间,即可以定位到在选定时间范围内和相关指标变化趋势最相似的SQL及其详细信息。
流量回放和压测:详情请参见流量回放和压测。
安全审计:详情请参见安全审计(旧版)。
参数说明
执行耗时分布:展示了选定时间范围内,所有SQL的执行耗时分布,将执行耗时分为了7个区间,每分钟计算一次,分别是:
[0,1]ms 是指满足0ms ≤ 执行耗时 ≤ 1ms SQL执行次数占比
(1,2]ms 是指1ms < 执行耗时 ≤ 2ms SQL执行次数占比
(2,3]ms 是指2ms < 执行耗时 ≤ 3ms SQL执行次数占比
(3,10]ms 是指3ms < 执行耗时 ≤ 10ms SQL执行次数占比
(10,100]ms 是指10ms < 执行耗时 ≤ 100ms SQL执行次数占比
(0.1,1]s 是指0.1s < 执行耗时 ≤ 1s SQL执行次数占比
>1s 是指1s < 执行耗时 SQL执行次数占比
说明如果一个实例的执行耗时分布越接近蓝色,代表这个实例的SQL健康情况越好,越接近橙色和红色,代表这个实例的SQL健康情况越差。
执行耗时(SQL RT):通过执行耗时,可以方便地查看在选定的时间范围内,SQL的执行耗时。
全量请求统计:展示了选定时间范围内每一类SQL的SQL文本、耗时比例、平均执行耗时、执行趋势等信息。
说明耗时比例=(该类SQL执行耗时 × 执行次数)/(所有SQL执行耗时 × 总执行次数)× 100%。耗时比例越高的SQL,占用MySQL资源越多。
SQL ID:单击SQL ID,您可查看该类SQL性能趋势、SQL样本等。
SQL样本:通过SQL样本,查看该SQL是由哪个应用端发起。
说明SQL样本的编码采用UTF-8字符集。
修改SQL日志的存储时长
减少SQL洞察和审计数据存储时长后,DAS会立刻将超过存储时长的SQL审计日志清空。建议您将SQL审计日志导出并保存至本地后,再减少SQL洞察和审计数据存储时长。
登录PolarDB控制台。
在左侧导航栏单击集群列表。
在左上角,选择集群所在地域。
找到目标集群,单击集群ID。
在左侧导航栏中,选择 。
单击右上角服务设置。
修改存储时长并单击确定。
如果您开通了DAS企业版V3,您可以修改不同子功能的数据存储时长。
说明SQL洞察和审计数据的存储空间是由DAS侧提供,不占用数据库实例的存储空间。
关闭SQL洞察和审计
SQL洞察和审计功能关闭后,SQL审计日志会被清空。请将SQL审计日志导出并保存至本地后,再关闭SQL洞察和审计功能。当重新开启SQL洞察和审计功能时,SQL审计日志将从本次开启SQL洞察和审计的时间开始记录。
登录PolarDB控制台。
在左侧导航栏单击集群列表。
在左上角,选择集群所在地域。
找到目标集群,单击集群ID。
在左侧导航栏中,选择 。
单击服务设置,关闭SQL洞察和审计。
如果您开通了DAS企业版V3,请去勾选SQL洞察和审计的所有功能。
单击确定。
查看审计日志的大小和消费明细
登录阿里云管理控制台。
在页面右上角,选择费用。
在左侧费用与成本导航栏中,选择 。
在账单详情页面,单击明细账单页签,设置搜索实例ID进行搜索。
查看计费项列为sql_explorer的费用明细。
迁移到新版
当前仅华东1(杭州)、华东2(上海)、华北2(北京)和华南1(深圳)地域的数据库实例支持将旧版SQL洞察和审计迁移到新版。
登录PolarDB控制台。
在左侧导航栏单击集群列表。
在左上角,选择集群所在地域。
找到目标集群,单击集群ID。
在左侧导航栏单击日志与审计>SQL洞察。
在弹出的SQL洞察升级为“SQL洞察和审计”对话框中,单击一键升级。
迁移不同企业版的SQL洞察和审计数据
企业版V2相对于企业版V1,变更了底层存储架构,通过冷热混合存储实现降本增效,使用成本低。而企业版V3,在冷热混合存储的基础上,按使用的功能细分计费项,计费更加灵活,使用成本更低。
当您的数据库实例支持企业版V3时,您可以将DAS企业版V1或V2的数据迁移至企业版V3,以获得更加优惠的费用,详情请参见DAS企业版间数据如何迁移?