首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏学习道路指南

    SQL治理经验

    SQL不仅会影响系统的响应速度,还可能导致数据丢失或损坏,给企业带来巨大的损失。因此,慢SQL治理成为了数据库管理的重要任务之一。 本文将分享一些慢SQL治理经验,包括如何识别、分析和优化慢查询。通过了解慢查询的原因和解决方法,我们可以提高数据库的性能和稳定性,为企业的业务发展提供更好的支持。 一、慢SQL导致的后果 我一般认为的慢SQL的定义,执行超过1s的SQL为慢SQL。 系统的响应时间延迟,影响用户体验。 资源占用增加,增高了系统的负载,其他请求响应时间也可能会收到影响。 可以使用Druid SQL Parser进行SQL解析,Druid SQL Parser是阿里巴巴的开源项目,可以将SQL语句解析为语法树,可以解析SQL的各个部分,如SELECT语句、FROM语、WHERE 五、总结 总之,慢 SQL 治理需要综合考虑多个方面,包括查询语句优化、参数调整、分区和分片、缓存使用、定期维护和优化、分布式数据库解决方案等。

    76110编辑于 2024-01-19
  • SQL性能治理经验谈

    背景SQL数据类型数值这些类型包括严格数值数据类型(INTEGER、SMALLINT、DECIMAL 和 NUMERIC),以及近似数值数据类型(FLOAT、REAL 和 DOUBLE PRECISION 结束时间是第 2147483647 秒,北京时间 2038-1-19 11:14:07,格林尼治时间 2038年1月19日 凌晨 03:14:07YYYY-MM-DD hh:mm:ss混合日期和时间值,时间戳SQL 治理的几条特殊建议【建议】表中的自增列(auto_increment属性),推荐使用bigint类型。 举例子,通过SQL的内置函数:inet_aton 和 inet_ntoa,完成数值到ip地址,以及ip地址到数值的转换。 更为高阶的方法,选用int来存储时间,使用SQL函数unix_timestamp()和from_unixtime()来进行转换。

    47400编辑于 2024-09-19
  • 来自专栏后台技术汇

    SQL治理经验谈:索引覆盖

    背景explain - formatid: query sql 的标识idSELECT_TYPE: 查询的类型(SIMPLE/PRIMARY/SUBQUERY/DERIVED/UNION/UNION RESULT 使用到的索引的长度ref: 显示了查询条件类型(const/field_name/func)rows: query查询到的行数量query完成索引命中之后,才会去检查的行总数估算性能耗时:rows用来表示在SQL like '%11';单列索引,通配符在左侧,select * 不会走索引,type=ALL检索性能差结果说明加了单列索引还不够,因为select 列 和 where 条件语句 两个变量,都可能导致sql :https://www.geeksforgeeks.org/explain-in-sql/官网Mysql的EXPLAIN信息描述:https://dev.mysql.com/doc/workbench /en/wb-performance-explain.html其他文章SQL性能治理经验谈理解到位:灾备和只读数据库记录一次Mysql死锁事件(由Insert与uniqueKey导致)一文带你看懂:亿级大表垂直拆分的工程实践亿级大表冷热分级的工程实践

    32100编辑于 2024-09-19
  • 来自专栏故障治理

    从管控角度谈慢SQL治理

    一、什么是慢SQLSQL是指那些执行效率低下、响应时间长,导致用户等待时间变长和服务器资源利用率下降的SQL查询。那么,如何定义一个SQL查询是"慢"的呢? 作为横向的风险隐患治理团队,为了对公司内部多个部门多个系统进行慢SQL治理,我们总结了几点经验,仅供参考。 SQL对系统的影响,不方便长期跟踪治理。 而通过慢SQL分析平台,对系统中的慢SQL进行统计、分析、分组,能够准确反映每个慢SQL对系统的影响,实时展示当前系统数据库的慢SQL情况,并可以对慢SQL风险进行数字化打分,方便我们对慢SQL分级治理 3.分级治理、长期追踪慢SQL治理是一个需要长期坚持做的事情,我们的做法是每月取数据库主机cpu使用率TOP10数据库清单,拉出top清单中的TOP5慢SQL(根据评分排序),并组织相关系统进行优化,对比优化前后的负载情况

    52310编辑于 2024-09-09
  • 来自专栏华章科技

    盘点数据治理6个价值

    作者:用友平台与数据智能团队 来源:大数据DT(ID:hzdashuju) 对于企业来讲,实施数据治理6个价值,如图1-2所示。 ▲图1-2 数据治理6个价值 01 降低业务运营成本 有效的数据治理能够降低企业IT和业务运营成本。 02 提升业务处理效率 有效的数据治理可以提高企业的运营效率。 03 改善数据质量 有效的数据治理对企业数据质量的提升是不言而喻的,数据质量的提升本就是数据治理的核心目的之一。 石秀峰,用友集团数据治理专家、中国电子商会数据资源服务创新专业委员会受聘专家、数据质量管理智库(DQPro)受聘专家。深耕数据领域十余年,曾主导过多家大型集团的数据治理、数据集成等项目的咨询和落地。

    1K30编辑于 2022-04-14
  • 来自专栏技术杂记

    SQL 精编(6

    其它管理工具 ---- mysqldump time mysqldump -u root -p fake_xx > fake_xx.sql time mysqldump -u root -p tab_xx conversations > /tmp/conversations.backup.sql ---- mysqladmin /usr/bin/mysqladmin flush-logs ; /etc/ mysqlslap --no-defaults --debug-info -uroot -p --number-int-cols=5 --number-char-cols=10 --auto-generate-sql --auto-generate-sql-add-autoincrement --concurrency=100 --number-of-queries=10000 --iterations=3 --engine --auto-generate-sql-add-autoincrement --concurrency=100 --number-of-queries=10000 --iterations=10 --

    59620发布于 2021-10-19
  • 来自专栏简单就是美!

    P6Spy & SQL Profiler & IronTrack SQL

    ----DB2 Magazine P6Spy & SQL Profiler & IronTrack SQL P6Spy是一个可以用来在应用程序中拦截和修改数据操作语句的开源框架。 通过P6Spy我们可以对SQL语句进行拦截,相当于一个SQL语句的记录器,这样我们可以用它来作相关的分析,比如性能分析。 6、运行你的应用程序或Web应用程序,可以在spy.log里看到监测到的sql详细记录信息了。 二、结合SQL Profiler进行图形化监控与使用 1、从 http://www.jahia.net/ 下载SQL Profiler的文件包进行安装; 2、把p6spy.jar及sqlprofiler.jar 6、设置监听端口号monitorport=2000 6、先运行 java -jar irontracksql.jar 来启动IronTrack SQL; 7、再启动你的应用程序或服务器; 8、可以在

    90020发布于 2019-02-28
  • 来自专栏数仓建模

    Spark UI (6) - SQL页面

    接上文 Spark UI (3、4、5) - Storage、Environment、Executors页面SQL页面展示了作业执行Spark SQL的情况, 它会按SQL层面展示一条SQL在Spark 图片SQL详情页面会展示SQL在spark中执行的具体计划(DAG图):INSERT OVERWRITE TABLE `${target.table}`select t1.report_date, join mart_grocery.dim_op_poi t2 on t1.grid_poi_id=t2.poi_id where t1.dt = '20220410'图片下方的Details会展示SQL 图片2.ETL任务Stage和DAG的对应关系通过stage DAG图中的coordinator id可以找到在SQL页面对应的位置, 例如:图片

    1.6K30编辑于 2022-09-05
  • 来自专栏JavaPark

    SQL 进阶挑战(6 - 10)

    SQL6 删除记录(一) 描述 现有一张试卷作答记录表exam_record,其中包含多年来的用户作答试卷记录,结构如下表: 作答记录表exam_record: start_time是试卷开始时间 submit_time 9001|2021-05-02 10:01:01|2021-05-02 10:05:58|60 5|1003|9001|2021-09-05 19:01:01|2021-09-05 19:40:01|49 6| DELETE FROM exam_record WHERE score < 60 AND TIMESTAMPDIFF(MINUTE, start_time, submit_time) < 5; SQL7 9001|2020-01-01 22:11:12|2020-01-01 23:16:12|50 4|1002|9001|2021-05-02 10:01:01|2021-05-02 10:06:58|60 6| TIMESTAMPDIFF(MINUTE, start_time, submit_time) < 5 OR submit_time IS NULL ORDER BY start_time LIMIT 3; SQL8

    54130编辑于 2022-06-15
  • 来自专栏一个爱吃西瓜的程序员

    学习SQL6】-复杂查询

    SQL的角度来看,视图和表是一样的,只是视图并不存储数据,而是存储SELECT语句。 视图的优点: 视图的优点大体上有两点。 ● 第一点是由于视图无需保存数据,因此可以节省存储设备的容量。 product_type | cnt_product--------------+------------- 办公用品 | 2 (1 行记录) 注释: ● 对大多数DBMS来说,多重视图会降低SQL product_type | cnt_product--------------+------------- 厨房用具 | 4 (1 行记录) 但是随着子查询的层数增加,SQL sale_price) FROM Product; 执行结果: avg----------------------- 2097.5000000000000000 (1 行记录) 然后完整的SQL

    1.2K90发布于 2018-04-04
  • 来自专栏全栈程序员必看

    6. SQL 多表查询

    SQL–数据库基础查询操作》。 前几节所总结的查询,都是基于单张表格进行的,如果单张表格的信息不足以达到查询的目的,就需要将他们组合到一起形成多张表格。 1. 翻译成SQL 如下图: 代码实现如下: SELECT a.学号,a.姓名, COUNT(b.课程号) AS 选课数, SUM(b.成绩) AS 总成绩 FROM student AS a LEFT SQL实现 代码如下: SELECT a.学号,a.姓名, AVG(b.成绩) AS 平均成绩 FROM student AS a LEFT JOIN score AS b ON a.学号=b.学号

    1.1K20编辑于 2022-08-23
  • 来自专栏iSharkFly

    Confluence 6 安装 SQL Server

    如果你还没有在安装可以连接的 Microsoft SQL Server 数据库,请先下载后进行安装。请参考 MSDN 上 Installation for SQL Server 的指南。   SQL Server 允许有 2 种的授权模式:SQL Server Authentication 和 Windows Authentication。 为了让你的 Confluence 能够顺利连上你的数据库,你需要设置你的 SQL Server 服务器使用混合授权模式( SQL Server 和 Windows 模式)。 https://www.cwiki.us/display/CONFLUENCEWIKI/Database+Setup+for+SQL+Server

    54550发布于 2019-01-31
  • 盘点6SQL小技巧

    也正是因为这个特性,一种很常见的SQL技巧是,用left join可替换not exists、not in等相关子查询,如下:sql复制代码select * from tableA A where not 查询各类别最大的那条数据比如在学籍管理系统中,有一类很常见的需求,查询每学科分数最高的那条数据,有如下几种写法:sql复制代码select * from stu_score s where s.course_id 一直以来,我看到SQL的join的条件大都是a.field=b.field这种形式,导致我以为join只能写等值条件,实际上,join条件和where中一样,支持>、<、like、in甚至是exists 上面场景还有一种写法,就是使用group by先把各学科最大分算出来,然后再关联出相应数据,如下:sql复制代码select * from(select s.course_id,max(s.score) 这个新的语法,可以非常简单的解决上面top n的场景,如下:sql复制代码select * from stu_course c join LATERAL (select * from stu_score

    40710编辑于 2024-05-30
  • 来自专栏杨建荣的学习笔记

    SQL治理高阶实践:异常防御体系建设与应用挖掘

    分享概要 一、防微杜渐:异常SQL防御体系建设 二、深度观测:全量SQL分析与挖掘 三、容量预测:数据库仿真流量压测 一、防微杜渐:异常SQL防御体系建设 1.SQL治理阶段 如上图所示,SQL治理的基本阶段主要包括开发 在开发阶段,研发通常不受相应开发规范和SQL审核约束。从开发到测试或生产发布时,才会进行DDL和DML的审核。目前业内SQL治理,主要还是在SQL出问题之后进行相应的治理。 之所以要把治理能力前置到测试阶段,是因为越早发现有问题的SQL,对整体治理或改造的成本就越低,对生产的影响也越小。 4.事后治理 事后治理主要是慢查询治理。 2)SQL挖掘:深度治理 基于全量SQL分析表、索引是否已废弃,不同db的热点表、热点SQL,单条SQL RT是否稳定,甚至可以分析表的活跃数据情况等治理场景。

    58230编辑于 2023-09-04
  • SQL 审核解决了部分问题,另一部分是慢 SQL 治理

    因为审核解决的是“降低变更风险”,慢 SQL 治理解决的是“已经出现慢 SQL 后怎么持续处理”。这两件事都重要,但不是同一层级的问题。 维度SQL 审核慢 SQL 治理核心问题别乱改已经慢了怎么办关注点谁能提交、谁来审批、能不能执行哪类 SQL 变多、哪个模板优先、改完有没有效发生时机变更前运行中 + 变更后成功标准没有违规变更慢 SQL 这样一来,SQL 审核就不再是孤零零的一步,而是被放回数据库日常治理链路里。 回到 SQL 窗口分析执行计划确定需要优化的 SQL 后,可以在 SQL 窗口执行:EXPLAIN <SQL语句>。 更能显著节省时间的,不是再多一层审核,而是慢 SQL 这条链路终于能被持续治理。审核管的是“降低变更风险”,治理管的才是“持续稳定”。

    9210编辑于 2026-03-27
  • 来自专栏希里安

    微服务治理?容器治理

    可识别英语、俄语、中文等语言,感兴趣的可以看下--[Translumo](https://github.com/Danily07/Translumo) 微服务和容器治理 微服务治理和容器治理都是与分布式应用程序和容器化部署相关的领域 微服务治理(Microservices Governance): 微服务治理是管理和维护微服务架构中的各个微服务组件的一系列策略、实践和工具。 自动化: 自动化是微服务治理的核心,包括自动部署、自动伸缩和自动化测试等。 容器治理(Container Orchestration): 容器治理是管理容器化应用程序的一系列策略和工具。 容器治理实例 容器治理是确保容器化应用程序在分布式环境中可靠运行的一组实践和工具。 容器治理: 安全性容器治理可以管理访问控制、证书管理和数据加密,以确保数据的保密性和完整性。

    1K40编辑于 2023-10-30
  • 来自专栏iSharkFly

    Confluence 6 Microsoft SQL Server 设置准备

    在开始前,请检查: 请查看 Supported Platforms 页面来获得 Confluence 系统支持的 SQL Server 数据库版本。 如果你从其他的数据库中迁移到使用 SQL Server 数据库,包括你从嵌入的内置评估数据库迁移到 Oracle,在进行安装之前,请阅读 Migrating to Another Database 中的内容 https://www.cwiki.us/display/CONFLUENCEWIKI/Database+Setup+for+SQL+Server

    74620发布于 2019-01-31
  • 来自专栏ytkah

    防止SQL注入的6个要点

    SQL注入,就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令。 防止SQL注入,我们可以从以下6个要点来进行: 1.永远不要信任用户的输入。对用户的输入进行校验,可以通过正则表达式,或限制长度;对单引号和 双"-"进行转换等。 2.永远不要使用动态拼装sql,可以使用参数化的sql或者直接使用存储过程进行数据查询存取。 3.永远不要使用管理员权限的数据库连接,为每个应用使用单独的权限有限的数据库连接。 5.应用的异常信息应该给出尽可能少的提示,最好使用自定义的错误信息对原始错误信息进行包装 6.sql注入的检测方法一般采取辅助软件或网站平台来检测,软件一般采用sql注入检测工具jsky,网站平台就有亿思网站安全平台检测工具 采用MDCSOFT-IPS可以有效的防御SQL注入,XSS攻击等。 PHP的MySQL扩展提供了mysqli_real_escape_string()函数来转义特殊的输入字符。

    3.3K20发布于 2018-07-04
  • 来自专栏王念博客

    p6spy监控sql语句

    P6Spy 是针对数据库访问操作的动态监测框架(为开源项目,项目首 页:www.p6spy.com)它使得数据库数据可无缝截取和操纵,而不必对现有应用程序的代码作任何修改。 P6Spy 分发包包括P6Log,它是一 个可记录任何 Java 应用程序的所有JDBC事务的应用程序。其配置完成使用时,可以进行数据访问性能的监测。 我们最需要的功能,查看sql语句,不是预编译的带问号的哦,而是真正的数据库执行的sql,更直观,更简单。 > </dependency> 2.修改jdbc驱动为p6spy datasource.druid.driverClassName=com.p6spy.engine.spy.P6SpyDriver 3. 添加配置 #第一:module.log的属性必须配置,如果不配置,P6SPY将不起任何作用,典型配置: module.log=com.p6spy.engine.logging.P6LogFactory

    1.9K10发布于 2019-07-25
  • 来自专栏python3

    6.简单sql注入之3

    ,我们输入4观察一下     发现空白,于是输入sql注入语句:1' and '1'='1 ?     没有报错,也有显示Hello!于是判断出,该题目没有过滤,只能用基于Hello! 回显的sql注入     猜测数据库,数据表,字段这些我就不浪费时间写了,有想要了解的道友,可以自行百度,或留言交流,我这里直接写爆破flag表flag字段的代码就好了 代码如下: #!

    41510发布于 2020-01-09
领券