摘要:一直以来,MySQL 对 count(*) 的执行都很头疼。MyISAM 引擎自带计数器,可以秒回;不过对 InnoDB 引擎来说实时计算就很头疼了。MySQL8.0 以前有多方法可以变相解决此类问题.比如:1、模拟 MyISAM 的计数器比如要获得表 A 的总数,我们建立两个触发器分别对 inse
阅读全文
摘要:聊聊慢SQL中关于IN语法的优化分析过程。 技术人人都可以磨炼,但处理问题的思路和角度各有不同,希望这篇文章可以抛砖引玉。以一个例子为切入点 一、问题背景 某业务模块反馈SQL慢,优化过程中的一些思考做个记录。基础环境: 主机类型:阿里云 操作系统:CentOS release 7.4 存储:Ali
阅读全文
摘要:原创作品,可以转载,但是请标注出处地址http://www.cnblogs.com/V1haoge/p/6385312.html 我们在程序中一般在做SQL优化的时候讲究使用EXISTS带替代IN的做法,理由是EXISTS执行效率要比IN高。 之前我一直挺懵懂的一件事情是如何使用EXISTS来替换I
阅读全文
摘要:一、SQL注入 1、什么是SQL注入? SQL注入是比较常见的网络攻击方式之一,主要攻击对象是数据库,针对程序员编写时的疏忽,通过SQL语句,实现无账号登录,篡改数据库。 SQL注入简单来说就是通过在表单中填写包含SQL关键字的数据来使数据库执行非常规代码的过程。 SQL数据库的操作是通过SQL语句
阅读全文
摘要:windows 操作系统,tomcat报错: java.net.SocketException: No buffer space available (maximum connections reached?): connect 调查发现由于大量的TIME_WAIT连接未被释放,导致占用的端口资源一
阅读全文
摘要:一、数据切分 关系型数据库本身比较容易成为系统瓶颈,单机存储容量、连接数、处理能力都有限。当单表的数据量达到 1000W 或 100G 以后,由于查询维度较多,即使添加从库、优化索引,做很多操作时性能仍下降严重。此时就要考虑对其进行切分了,切分的目的就在于减少数据库的负担,缩短查询时间。 数据库分布
阅读全文
摘要:2020年,全球数据库行业市场规模已经达到了665亿美元。2021年,全球信息化程度进一步提高,经营管理信息化、办公模式自动化等均推动了整个全球数据库行业的发展。 随着我国信息化进程的加快以及互联网技术的广泛应用,大数据、云计算等信息产业环境日益成熟。其中,数据库作为支撑信息产业的基石,遇到了良好的
阅读全文
摘要:导读 关系数据模型于 1970 年推出,并已占据主导地位 50 年。它为什么如此成功?这要归功第一性原理和布什内尔定律。 1971 年 3 月,英特尔推出世界上第一款通用微处理器——英特尔 4004。它有约 2300 个晶体管,售价 60 美元。 时间快进到 50 年后,最新的 iPhone 有将近
阅读全文
摘要:项目安装的数据库目录默认在C盘,更换数据文件至D盘后服务无法正常启动 遇到以上报错优先考虑以下两方面的异常: ①确保数据文件目录是可写的 打开配置文件,找到datadir指定的文件 右键该文件-属性-安全 部分系统无法赋予CREATOR OWNER完全控制权限,此时可以赋予everyone的完全控制
阅读全文
摘要:1> 问题描述: 某客户集团反馈某模块崩溃,导致系统异常,系统无法登陆; 关闭该模块浏览模块后,系统才恢复正常问题重复出现多次。 处理过程 协助排查问题优化过程中发现查询该模块的一个长SQL导致性能问题,其中引发问题的主要原因在下图中的部分SQL片段: 以上SQL中workflowtye在流程表中存
阅读全文
摘要:问题背景:客户反馈mysql服务启动失败报错如下: 1 Starting MySQL....The server quit without updating PID file[FAILED]mysql/mysql.pid). 尝试直接启动 1 [root@host-10-10-208-42 data
阅读全文
摘要:问题背景: MySQL服务启动失败。 协助启动数据库时发现日志中大量的表空间文件异常的错误信息 1 [ERROR] [MY-011971] [InnoDB] Tablespace 'innodb_undo_001' Page [page id: space=4294967279, page numb
阅读全文
摘要:索引是一种提高我们查询效率的数据结构,大家肯定很熟悉,在日常数据库优化工作中经常会接触到 今天说一说索引的底层结构。 【索引结构】 MySQL 索引一般是哈希表或 B+ 树,常用的 InnoDB 引擎默认使用的是 B+ 树来作为索引的数据结构。 为什么不用哈希表? 什么是哈希表? 哈希表(也叫散列表
阅读全文
摘要:如何减少CPU消耗? 减少等待 减少IO量。 SQL/index,使用合适的索引减少扫描的行数(需平衡索引的正收益和维护开销,空间换时间) 提升IO处理能力 加cache/加磁盘/SSD 减少计算 减少逻辑运算量 避免使用函数,将运算转移至易扩展的应用服务器中 如substr等字符运算,datead
阅读全文
摘要:问题背景: 客户反馈系统性能存在严重问题,需要协助排查 排查发现系统有大量锁持有资源时间过长 临时手工KILL产生死锁源头的会话, 协助排查死锁产生的原因发现,业务提交至此节点,项目二开嵌套了一个其他事务导致死锁频发。 死锁产生的原因: ①会话A,update 1 nocommit ②会话B,upd
阅读全文
摘要:双主+keepalived+haproxy配置(负载均衡) 实验系统:CentOS 6.5_x86_64实验前提:防火墙和selinux都关闭实验软件:keepalived-1.2.13 haproxy-1.8.13 mysql—5.7.21主1 ip:192.168.226.134主2 ip:19
阅读全文
摘要:5.哪个SQL返回的结果集最多(net消耗)SELECT SCHEMA_NAME,DIGEST_TEXT,COUNT_STAR,SUM_ROWS_SENT,SUM_ROWS_SENT,FIRST_SEEN,LAST_SEENFROM performance_schema.events_stateme
阅读全文
摘要:1.查看哪些sql执行最多SELECT SCHEMA_NAME,DIGEST_TEXT,COUNT_STAR,SUM_ROWS_SENT,SUM_ROWS_EXAMINED,FIRST_SEEN,LAST_SEENFROM performance_schema.events_statements_s
阅读全文