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

    SQL治理经验

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

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

    ,16 777 215)大整数值INT或INTEGER4 Bytes(-2 147 483 648,2 147 483 647)(0,4 294 967 295)大整数值BIGINT8 Bytes(-9,223,372,036,854,775,808 ,9 223 372 036 854 775 807)(0,18 446 744 073 709 551 615)极大整数值FLOAT4 Bytes(-3.402 823 466 E+38,-1.175 治理的几条特殊建议【建议】表中的自增列(auto_increment属性),推荐使用bigint类型。 举例子,通过SQL的内置函数:inet_aton 和 inet_ntoa,完成数值到ip地址,以及ip地址到数值的转换。 更为高阶的方法,选用int来存储时间,使用SQL函数unix_timestamp()和from_unixtime()来进行转换。

    47100编辑于 2024-09-19
  • 来自专栏捞月亮的小北

    9. 动态SQL

    Mybaits 框架的动态 SQL 技术是一种根据特定条件动态拼接 SQL 语句的功能 , 它存在的意义是为了解决拼接 SQL 语句字符串时的痛点问题 ‍ Mybatis 中动态 SQL 怎么理解? 同时,也需要注意 SQL 注入和动态 SQL 的维护难度问题。 SQL 片段的作用是将常用的 SQL 语句封装成一个可重用的组件,方便在多个地方使用。 Mybatis 中的 SQL 片段有两种类型: 动态 SQL 片段:根据不同的条件生成不同的 SQL 语句。 6.2 SQL 片段的作用 ‍ SQL 片段(SQL Fragments)是 Mybatis 中一个重要的功能,它的作用是将一段 SQL 片段用 <sql>​ 元素封装,并在需要的地方通过 <include 减小 SQL 的维护难度:将一段 SQL 代码封装成 SQL 片段,可以方便维护和修改,避免了对 SQL 语句的重复修改和维护。

    49210编辑于 2023-12-01
  • 来自专栏后台技术汇

    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导致)一文带你看懂:亿级大表垂直拆分的工程实践亿级大表冷热分级的工程实践

    31600编辑于 2024-09-19
  • 9SQL优化技巧

    大多数的接口性能问题,很多情况下都是SQL问题,在工作中,我们也会定期对慢SQL进行优化,以提高接口性能。这里总结一下常见的优化方向和策略。 避免使用select *,减少查询字段不要为了图省事,直接查询全部的字段,尽量查需要的字段,特别是复杂的SQL,能够避免很多不走索引的情况。这也是最基本的方法。 避免使用左模糊查询在工作中,对于姓名、手机号、名称等内容,经常会遇到模糊查询的场景,但是要尽量避免左模糊,这种SQL无法使用索引。 join的优化JOIN 是 SQL 查询中的一个操作,用于将两个或多个表连接在一起。JOIN 操作有几种类型,包括 LEFT JOIN、RIGHT JOIN 和 INNER JOIN。 我们日常使用较多的分页一般是用的PageHelper插件,SQL如下:sql复制代码select id,name from table_name where N个条件 limit 100000,10;它的执行流程

    1.2K10编辑于 2024-05-21
  • 来自专栏故障治理

    从管控角度谈慢SQL治理

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

    51510编辑于 2024-09-09
  • 来自专栏一个爱吃西瓜的程序员

    学习SQL9】-集合与联结

    现在我们开始学习使用2张以上的表的SQL语句。通过以行方向为单位的集合运算符和以列方向为单位的联结,就可以将分散在多张表中的数据组合成期望的结果。 SQL中的联结有很多种,我们主要学习内联结和外联结两种。 内联结—INNER JOIN 内联结(INNER JOIN)是运用最广泛的联结运算。 SP.shop_name, SP.product_id, P.product_name FROM ShopProduct AS SP CROSS JOIN Product AS P; 上述的SQL

    1.5K120发布于 2018-04-04
  • 来自专栏机器学习/数据可视化

    SQL进阶-9-谓词exists使用

    SQL进阶-9-EXISTS谓词的使用 支撑SQL和关系数据库的两个重要理论基础: 数学领域的集合论 现代逻辑学标准体系的谓词逻辑(predicate logic) 本文中重点介绍的是谓词exists的用法 SQL实现 假设所有人都参加了全部的会议,生成了一个集合,再用该集合减去现有的数据即可。 ,col10); -- 查询至少存在一个9的行记录:any select * from Tablename where 9 = any (col1, col2, col3,... ,col10); -- where 9 in (col1, col2, col3,... ,col10) is null; 小结 SQL谓词指的是返回值为真值的函数 EXISTS与其他谓词不同,接受的参数是集合;可以看做是一种高阶函数 SQL中没有实现全称量词相当的谓词,但是可以通过not

    1.4K20发布于 2021-03-01
  • 来自专栏信息技术智库

    9.MySQL数据查询SQL

    9.MySQL数据查询SQL 语法格式: select 字段列表|* from 表名 [where 搜索条件] [group by 分组字段 [having 分组条件]] [order by 排序字段  -- 问题出在 sql 计算的顺序上,sql会优先处理and条件,所以上面的sql语句就变成了 -- 查询变成了为年龄22的不管性别,或者年龄为 25的女生 -- 如何改造sql符合我们的查询条件呢? +---------+ -- 统计 users 表中的数据量 select count(*) from users; +----------+ | count(*) | +----------+ | 9  | +----------+ select count(id) from users; +-----------+ | count(id) | +-----------+ | 9 | +-------- rows in set (0.00 sec) -- 如果按照sex这一列进行统计,结果就是8个而不是9个,因为sex这一列中有NULL值存在 mysql> select count(sex) from 

    1.3K30编辑于 2022-07-29
  • 来自专栏数据STUDIO

    要避免的 9SQL 错误

    下面对不该做的事进行逆向分析,指导你写出清晰、优化、强大的 SQL 语句: 1、避免不明确的列命名: Don’t CREATE TABLE table1 (id int , name varchar(50 7.不要忽视错误处理: Don’t (No error handling) Do BEGIN TRY -- Your SQL statement here -- END TRY BEGIN CATCH 9.不要忽略评论和文档: Don’t (No comments or documentation) Do -- This query retrieves all active customers with

    62810编辑于 2024-06-04
  • 来自专栏网安菜鸟成长记

    sql-labs-less9less10|脚本SQL时间盲注

    前言: 此系列为sql-labs第9关和第10关,两关差别不大,这一关使用sql时间盲注的方法,写脚本进行注入,前面的关卡没有用过时间盲注,所以这一关讲的比较详细,如果错误的地方还请大佬指正! 正文: less9: 本关无论注入正确与否页面都显示一样的回显,所以无法像第八关那样通过查看页面是否输出语句来判断注入的语句是否正确执行,这一关使用时间盲注方法 请看代码: import requests import time import datetime url = "http://localhost/sql-labs/Less-9/? print("flag为->"+flag) get_flag() 跟第八关的脚本差不多,只是使用的注入语句有点差别,涉及到第八关的脚本详解这里不在多说,如果有不懂的请看第八关详解sql-labs-less8 sleep()函数 功能:执行挂起一段时间,也就是等待一段时间在继续执行,里面的参数单位为秒 less10: less10和less9的区别只是单引号双引号,less10换成双引号就好了 。

    2.3K31发布于 2020-10-28
  • 来自专栏自动化、性能测试

    Mysql常用sql语句(9)- like 模糊查询

    测试必备的Mysql常用sql语句系列 https://www.cnblogs.com/poloyy/category/1683347.html 前言 like应该是最常用的查询条件了 必须滴掌握!

    4.5K20发布于 2020-06-09
  • 来自专栏杨建荣的学习笔记

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

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

    58030编辑于 2023-09-04
  • 来自专栏学习有记

    T-SQL进阶:超越基础 Level 9:动态T-SQL代码

    在Listing 9中,我提供了一个如何修改我的GetUserName存储过程以使用参数化的TSQL的例子。 使用参数化的TSQL 在Listing 9中,我更改了我的GetProducts存储过程,以使用sp_executesql来执行我的动态TSQL。 为此,首先我需要运行Listing 9中的代码。 (2, 'Farm Animals', 7.59), (2, 'Toy Solders', 17.76); Listing 9: 创建并填充Client表 在运行Listing 9重新创建我的产品表之后,我可以运行Listing 5,6,7和8来证明我解决了我的SQL注入问题。

    2.8K20发布于 2018-07-18
  • SQL 审核解决了部分问题,另一部分是慢 SQL 治理

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

    8310编辑于 2026-03-27
  • 来自专栏火山信安实验室

    泛微 E-cology9 SQL注入漏洞

    漏洞情况近期,火山信安实验室监测发现,泛微 E-cology 作为一款广泛应用于国内企事业单位的企业级协同办公系统(OA),存在典型的 SQL 注入漏洞,攻击者可通过构造恶意输入绕过系统验证,直接操纵数据库查询 0x01漏洞利用方式攻击者通过输入特殊字符(如 '、--、OR 1=1)探测系统响应以判断是否存在 SQL 注入点,随后利用该漏洞获取用户账号、密码、组织架构等敏感信息,或通过注入修改管理员权限、创建后门账户实现系统控制 0x02影响范围泛微 E-cology 9 < 10.750x03修复方案升级到安全版本:泛微已发布多个安全补丁,建议用户升级至最新稳定版本(如 E-cology 10.x)在代码层面增加对用户输入的过滤 (如禁止特殊字符 '、;、--)部署 Web 应用防火墙(如 ModSecurity),拦截 SQL 注入攻击启用系统日志,记录异常 SQL 查询行为来源自:广州盈基信息官网

    46710编辑于 2025-09-11
  • 来自专栏希里安

    微服务治理?容器治理

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

    1K40编辑于 2023-10-30
  • 来自专栏华章科技

    50%企业数据治理失败!这9大要素才是成功关键

    导读:企业数据治理9个要素。 影响企业数据治理建设成效的因素很多,主要有9个要素,如图3-2所示。 ▲图3-2 企业数据治理9个要素 01 数据战略 很多企业都说自己重视数据,但是能规划出明确的目标、范围、实施路径并具备可执行数据战略的企业却很少。 此外,很多企业还有招聘框架和人才竞争机制限制,进一步减少了其引入高端数据治理人才的机会。 08 技术 传统数据治理更多是“头痛医头,脚痛医脚”的局部治理。 要让数据治理发挥价值,必须战略性地使用数据治理技术,将数据治理贯穿于数据的“采、存、管、用”整个生命周期中。

    1.1K20编辑于 2022-04-14
  • 来自专栏实时流式计算

    【译文】数据治理与BI治理

    几十年来,数据治理一直是企业关注的焦点,并随着企业数据量的急剧增长,数据治理的重要性日益凸显。然而,大规模的有效BI治理一直是一个难以实现的目标,因为它需要比传统数据治理更广泛的关注点。 毕竟,如果给用户的交付物不一致,或者缺乏适当的上下文以确保业务用户正确地理解数据,那么所谓高质量、精心治理的数据又有什么价值呢? 有效的BI治理要求组织为数据和分析的治理建立流程。 BI门户的关键治理角色体现在以下两个场景:独立的BI治理平台,或与数据目录协同工作。 什么是数据治理? 数据治理是一组确保有效管理和利用数据的过程和技术的集合。 组织中的分析师和数据管理员使用数据治理工具来执行公司治理政策,来促进数据的正确使用。 应用这些工具进行数据治理需要大量的持续投资,因此许多组织希望从这些投资中获得可观的投资回报。 什么是BI治理

    1.5K40编辑于 2023-03-24
  • 来自专栏小道

    Flink学习笔记(9)-Table API 和 Flink SQL

    一、Table API 和 Flink SQL 是什么? 执行 SQL 查询   4.   Flink 的 SQL 集成,基于实现 了SQL 标准的 Apache Calcite   在 Flink 中,用常规字符串来定义 SQL 查询语句   SQL 查询的结果,也是一个新的 Table 内置支持的语法,所以这在SQL中属于基本的聚合操作。 SQL中支持的很多函数,Table API和SQL都已经做了实现,其它还在快速开发扩展中。   以下是一些典型函数的举例,全部的内置函数,可以参考官网介绍。

    2.7K10编辑于 2022-05-11
领券