PolarDB-X 1.0-用户指南-SQL审计与分析-简介

本文涉及的产品
云原生数据库 PolarDB 分布式版,标准版 2核8GB
简介: 分布式关系型数据库PolarDB-X与日志服务联合推出SQL审计与分析功能,不仅支持历史SQL记录的审计,而且提供对SQL执行状况、性能指标、安全问题的实时诊断分析能力。您可以在PolarDB-X控制台,开通SQL审计与分析功能,进行实时日志分析。同时,PolarDB-X依托日志服务,提供开箱即用的报表中心,使您对数据库执行状况、性能、潜在安全问题了如指掌。

功能优势

  • 操作简单:轻松配置即可开启,实时进行SQL日志的审计与分析。
  • 性能无损:实时拉取PolarDB-X节点SQL日志文件并上传至日志服务,对实例本身性能无影响。
  • 历史问题追溯:支持导入历史SQL日志,追溯问题。
  • 实时分析:依托日志服务,提供SQL实时分析、开箱即用的报表中心并支持自定义报表和下钻分析,对数据库执行状况、性能、安全问题了如指掌。
  • 实时告警:支持基于特定指标,定制准实时的告警,确保关键业务异常时可及时响应。
  • 价格优势:存储费用比传统方案更低, 每GB日志存储费用低至0.58元/月,详情请参见计费方式

限制与说明

  • 使用SQL审计与分析功能,需要开通阿里云日志服务。
  • 当前支持的区域:华东1(杭州)、华东2(上海)、华北1(青岛)、华北2(北京)、华南1(深圳)。其它地区陆续开放中。
  • 共享实例不支持SQL审计与分析功能。
  • SQL审计日志默认保存30天,您也可以根据需要修改日志保存时间。
  • 请勿随意删除或修改日志服务为您默认创建的Project、Logstore、索引和仪表盘设置,日志服务会不定期更新与升级SQL日志审计功能,专属日志库的索引与默认报表也会自动更新。
  • 子账号使用SQL审计与分析,需要为其授予日志服务相关权限,详情请参见为子账号授予SQL审计权限
  • SQL审计功能默认为关闭状态。开启该功能后,会产生额外费用,详细收费标准请参见计费方式。如果您需要关闭该功能,请在PolarDB-X控制台关闭。关闭后不再写入数据,可以查看历史数据,这部分历史数据会产生存储和索引费用。您可以在日志服务控制台删除Logstore以删除历史数据,删除后日志服务不再对该部分数据计费。
  • 单条SQL最大支持长度为5M。

应用场景

问题SQL排查

开启PolarDB-X SQL审计与分析功能后,您可以对SQL日志进行快速检索,排查定位问题。例如,需要查询是否有人执行DROP操作,可以执行如下查询:


  1. sql_type:Drop

查询结果中包括SQL的执行时间、用户、执行该SQL的客户端IP地址等。

高代价SQL模板分析

大多数应用中,SQL通常是基于若干模板动态生成的,只是参数不同。通过日志服务的实时分析能力,您可以获取当前数据库中的高代价SQL列表。

例如执行以下查询:


  1. | SELECT sql_code as"SQL模板ID", round(total_time *1.0/sum(total_time) over()*100,2)as"总体耗时比例(%)",execute_times as"执行次数", round(avg_time)as"平均执行时间",round(avg_rows)as"平均影响行数", CASE WHEN length(sql)>200 THEN  concat(substr(sql,1,200),'......') ELSE trim(lpad(sql,200,' '))endas"样例SQL" FROM  (SELECT sql_code, count(1)as execute_times, sum(response_time)as total_time, avg(response_time)as avg_time, avg(affect_rows)as avg_rows, arbitrary(sql)as sql FROM log GROUP BY sql_code) ORDER BY "总体耗时比例(%)" desc limit 10

查询结果如下图所示,包括SQL模板的ID、该模板SQL占SQL的耗时比例、执行次数、平均执行时间、平均影响行数以及样例SQL。您可以基于该分析结果,找到应用中代价最高的SQL模板,对其进行优化。

日志报表统计

为了便于分析问题,PolarDB-X SQL审计分析结合日志服务,为您提供了开箱即用的报表,让您对数据库的执行状况、性能和潜在安全问题进行实时诊断分析,报表页面如下图所示:

  • 运营中心

  • 性能中心


  • 安全中心

相关实践学习
快速体验PolarDB开源数据库
本实验环境已内置PostgreSQL数据库以及PolarDB开源数据库:PolarDB PostgreSQL版和PolarDB分布式版,支持一键拉起使用,方便各位开发者学习使用。
相关文章
|
1月前
|
SQL 存储 数据可视化
手机短信SQL分析技巧与方法
在手机短信应用中,SQL分析扮演着至关重要的角色
|
3月前
|
前端开发 Java JSON
Struts 2携手AngularJS与React:探索企业级后端与现代前端框架的完美融合之道
【8月更文挑战第31天】随着Web应用复杂性的提升,前端技术日新月异。AngularJS和React作为主流前端框架,凭借强大的数据绑定和组件化能力,显著提升了开发动态及交互式Web应用的效率。同时,Struts 2 以其出色的性能和丰富的功能,成为众多Java开发者构建企业级应用的首选后端框架。本文探讨了如何将 Struts 2 与 AngularJS 和 React 整合,以充分发挥前后端各自优势,构建更强大、灵活的 Web 应用。
58 0
|
3月前
|
SQL 数据采集 数据挖掘
为什么要使用 SQL 函数?详尽分析
【8月更文挑战第31天】
48 0
|
3月前
|
SQL 数据采集 算法
【电商数据分析利器】SQL实战项目大揭秘:手把手教你构建用户行为分析系统,从数据建模到精准营销的全方位指南!
【8月更文挑战第31天】随着电商行业的快速发展,用户行为分析的重要性日益凸显。本实战项目将指导你使用 SQL 构建电商平台用户行为分析系统,涵盖数据建模、采集、处理与分析等环节。文章详细介绍了数据库设计、测试数据插入及多种行为分析方法,如购买频次统计、商品销售排名、用户活跃时间段分析和留存率计算,帮助电商企业深入了解用户行为并优化业务策略。通过这些步骤,你将掌握利用 SQL 进行大数据分析的关键技术。
181 0
|
3月前
|
SQL 数据挖掘 BI
【超实用技巧】解锁SQL聚合函数的奥秘:从基础COUNT到高级多表分析,带你轻松玩转数据统计与挖掘的全过程!
【8月更文挑战第31天】SQL聚合函数是进行数据统计分析的强大工具,可轻松计算平均值、求和及查找极值等。本文通过具体示例,展示如何利用这些函数对`sales`表进行统计分析,包括使用`COUNT()`、`SUM()`、`AVG()`、`MIN()`、`MAX()`等函数,并结合`GROUP BY`和`HAVING`子句实现更复杂的数据挖掘需求。通过这些实践,你将学会如何高效地应用SQL聚合函数解决实际问题。
51 0
|
2月前
|
关系型数据库 MySQL 网络安全
5-10Can't connect to MySQL server on 'sh-cynosl-grp-fcs50xoa.sql.tencentcdb.com' (110)")
5-10Can't connect to MySQL server on 'sh-cynosl-grp-fcs50xoa.sql.tencentcdb.com' (110)")
|
4月前
|
SQL 存储 监控
SQL Server的并行实施如何优化?
【7月更文挑战第23天】SQL Server的并行实施如何优化?
111 13
|
4月前
|
SQL
解锁 SQL Server 2022的时间序列数据功能
【7月更文挑战第14天】要解锁SQL Server 2022的时间序列数据功能,可使用`generate_series`函数生成整数序列,例如:`SELECT value FROM generate_series(1, 10)。此外,`date_bucket`函数能按指定间隔(如周)对日期时间值分组,这些工具结合窗口函数和其他时间日期函数,能高效处理和分析时间序列数据。更多信息请参考官方文档和技术资料。
|
4月前
|
SQL 存储 网络安全
关系数据库SQLserver 安装 SQL Server
【7月更文挑战第26天】
60 6
|
4月前
|
存储 SQL C++
对比 SQL Server中的VARCHAR(max) 与VARCHAR(n) 数据类型
【7月更文挑战7天】SQL Server 中的 VARCHAR(max) vs VARCHAR(n): - VARCHAR(n) 存储最多 n 个字符(1-8000),适合短文本。 - VARCHAR(max) 可存储约 21 亿个字符,适合大量文本。 - VARCHAR(n) 在处理小数据时性能更好,空间固定。 - VARCHAR(max) 对于大文本更合适,但可能影响性能。 - 选择取决于数据长度预期和业务需求。
371 1

相关产品

  • 云原生分布式数据库 PolarDB-X