场景介绍: 我们有一张表,专门用来生成自增ID供业务使用,表结构如下: 每次业务想要获取一个新ID,就执行以下SQL: 由于这些数据只需保留最近一天的数据,因此建立一个SQL作业来定期删除数据,删除脚本很简单: 作业每10秒运行一次,每天运行 ...
部分朋友在遇到收缩数据库文件的时候遇到一些困难,发现明明有大量剩余空间或删除了大量数据,还是无法收缩数据库,这是为啥子呢 要收缩数据库文件,首先我们需要确定有多少空间可以收缩,由于收缩文件是按照Extent来收缩,因此我们需要查找有多少未分配的分区。 或者使用 在一些情况下,删除了大量数据,但是可以收缩的空间还是很小,这是为什么呢 让我们一步步来分析查找。 首先我们查看数据库上Extent的使用 ...
2014-06-06 20:35 8 765 推荐指数:
场景介绍: 我们有一张表,专门用来生成自增ID供业务使用,表结构如下: 每次业务想要获取一个新ID,就执行以下SQL: 由于这些数据只需保留最近一天的数据,因此建立一个SQL作业来定期删除数据,删除脚本很简单: 作业每10秒运行一次,每天运行 ...
HASH,百度百科上做如下定义: Hash,一般翻译做“散列”,也有直接音译为“哈希”的,就是把任意长度的输入(又叫做预映射, pre-image),通过散列算法,变换成固定长度的输出,该输出就是散 ...
值班期间研发同事打来电话,说应用有超时,上服务器上检查发现有SQL大批量地执行,该SQL消耗IO资源较多,导致服务器存在IO瓶颈,细看SQL,发现自己都被整蒙了,不知道这SQL是要干啥,处理完问题赶紧研究下。 SQL类似于: 第一赶脚是写这代码的研发同事想分页,但是这每页的数据 ...
在一次系统优化中,意外发现一个比较“坑”的SQL,拿出来供大家分享。 生成演示数据: 执行查询: 上面查询虽然列column_id上有索引,但由于该列的选择性不高,查询优化引擎根据预估行数生成“使用表扫描”的执行计划: 针对此测试环境,表扫描的确是最优的查询方式 ...
今天使用SQLCMD导入到SQL SERVER数据库中,看着数据文件都成功执行,但是意外发现有一个文件数据没有成功导入,但执行不报错,很容易导致问题被忽略。 使用存在问题的文件做下测试,从界面上看几行脚本没有任何问题: 4条INSERT语句“几乎”一样,区别在于最上面三行的部分 ...
--===================================================================== 事件起因:开发发现有表插入数据失败,查看后发现INT类型自增值已经到了最大值,无法继续插入,需要修改INT类型为BIGINT类型。 --========================================================== ...
DBCC SHRINKFILE 收缩相关数据库的指定数据文件或日志文件大小。 语法 DBCC SHRINKFILE ( { file_name | file_id } { [ ,target_size ] | [ , { EMPTYFILE ...
前言,这几天查看了很多关于SQL SERVER收缩数据文件方面的文章,准备写一篇关于收缩日志方面的文章,但是突然有种冲动将看过经典的文章翻译出来,下面这篇文章是翻译的是Paul Randal – “Why You Should Not Shrink Your Data Files”。有些比较 ...