随笔分类 -  SQL Server

摘要:收缩整个数据库 DBCC SHRINKDATABASE (dbName) 收缩单个文件DBCC SHRINKFILE (FileName) 查找所有的文件名称USE dbNameEXEC sp_helpfile 例如对 AdventureWorks 数据库/* Shrink Whole Advent 阅读全文
posted @ 2016-07-27 10:40 BITALKER 阅读(205) 评论(0) 推荐(0)
摘要:Sql Server的系统数据库分为:master、model、msdb,resouce和tempdb,这五个数据库在SQL Server中各司其职,作为研发人员,很有必要了解这几个数据库的职责,下面我们来看看这几个数据库的作用。 master master 数据库记录 SQL Server 系统的 阅读全文
posted @ 2016-04-13 08:32 BITALKER 阅读(465) 评论(0) 推荐(0)
摘要:事务是一个非常重要的概念,特此在这里写一些文章来总结。整篇文章还在持续更新中。 在本系列文章中,你将看到以下内容: 阅读全文
posted @ 2015-10-13 21:52 BITALKER 阅读(219) 评论(0) 推荐(0)
摘要:既然事务日志如此重要,如果设置不当可能会带来性能问题,那么我们究竟该给事务日志分配多大空间呢?额,这个没有明确的答案,要具体情况具体对待。 一般做为正常的日常操作,建议为起始数据文件大小的 25%。因此,如果您的数据文件是 20 GB,那么日志文件设置为 5 GB。还要持续的监视它,看它是否会不断的增长并超越 5GB。正如我们之前说的,频繁的添加小的日志空间将会增加新的虚拟日志文件,过多的虚拟日... 阅读全文
posted @ 2015-10-13 21:50 BITALKER 阅读(1617) 评论(0) 推荐(0)
摘要:管理不正确的日志记录最终将填满磁盘导致没有更多的空间去记录新的数据库操作而使操作失败。事务日志持续增长可以为几个不同的原因。长时间运行的事务、 不正确的恢复模型配置等。日志截断将释放日志文件中的空间,所以事务日志可以重用它。除非有某种意外耽搁,日志截断将发生自动检查点 (如果数据库是在简单恢复模式) 或之后一次日志备份 (如果数据库是在完整或大容量日志恢复模式)。 下面是两种收缩日志方式。 使... 阅读全文
posted @ 2015-10-13 21:39 BITALKER 阅读(625) 评论(0) 推荐(0)
摘要:BEGIN TRANSACTION 标记一个显式本地事务的起始点。 BEGIN TRANSACTION 使 @@TRANCOUNT 按 1 递增。 BEGIN TRANSACTION 代表一点,由连接引用的数据在该点逻辑和物理上都一致的。 如果遇上错误,在 BEGIN TRANSACTION 之后的所有数据改动都能进行回滚,以将数据返回到已知的一致状态。 每个事务继续执行直到它无误地完成并且用... 阅读全文
posted @ 2015-10-12 22:59 BITALKER 阅读(3954) 评论(0) 推荐(0)
摘要:正如我们之前所说的,事务日志会记录所有的数据库更改。如果你的系统比较繁忙,经常做一些数据库更改操作。这会使事务日志增长。如果我们取消了自动增长,而事务日志大小已经达到了预设的最大值,数据库系统就会报错。我们一般建议是选择自动增长,但是要持续的监视日志文件大小。当然如果设置的增长率比较小的话会影响性能 阅读全文
posted @ 2015-10-11 10:43 BITALKER 阅读(415) 评论(0) 推荐(0)
摘要:监控日志文件大小是一件非常重要的任务,SQL Server 已经使得我们很容易的做到这些。查找有关的日志信息的一种方法是在目录视图sys.database_files中。这个视图返回关于日志文件的信息,包括文件,名称,位置,状态,大小,增长等。下面的查询语句将会只查日志文件,并显示了一些非常有用的信息。 SELECT name AS [File Name], physic... 阅读全文
posted @ 2015-10-09 19:45 BITALKER 阅读(293) 评论(0) 推荐(0)
摘要:嵌套事务是指一个事务创建在另一个事务里面,这种情况一般发生在一个存储过程里面有事务,然后又在有事务的语句中调用它。例如,以下是一段嵌套事务的语句BEGIN TRAN Tran1 GO BEGIN TRAN Nested Tran GO INSE... 阅读全文
posted @ 2015-10-09 19:12 BITALKER 阅读(525) 评论(0) 推荐(0)
摘要:事务概念事务可以用很多很多不同的方式去定义。事务是数据库操作执行的一个逻辑工作单元,是用户定义的一个数据库操作序列,这些操作要么全做要么全不做,是一个不可分割的工作单位。例如, 在关系数据库中, 一个事务可以是一条SQL语句、一组SQL语句或整个程序。事务和程序是两个概念。一般地讲, 一个程序中包含... 阅读全文
posted @ 2015-10-09 19:10 BITALKER 阅读(1855) 评论(0) 推荐(0)
摘要:本文截取自MSDN https://msdn.microsoft.com/zh-cn/library/ms151176(v=sql.120).aspx事务复制通常从发布数据库对象和数据的快照开始。创建了初始快照后,接着在发布服务器上所做的数据更改和架构修改通常在修改发生时(几乎实时)便传递给订阅服务... 阅读全文
posted @ 2015-10-09 19:04 BITALKER 阅读(405) 评论(0) 推荐(0)
摘要:为什么我们需要事务日志,可不可以删除或者不添加日志文件?答案是否定的,如果没有事务日志,你的数据库根本无法工作!事务日志支持以下操作:恢复个别的事务如果用户或程序使用了Rollback 语句或者是数据库检测到了失败的操作 。 这些日志文件就会被用来做回滚。在 SQL Server 启动时恢复所有未完... 阅读全文
posted @ 2015-10-09 19:00 BITALKER 阅读(291) 评论(0) 推荐(0)
摘要:Part 1:事务日志每个 SQL Server 数据库都具有事务日志,用于记录所有事务以及每个事务对数据库所做的修改。必须定期截断事务日志以避免它被填满。但是,一些因素可能延迟日志截断,因此监视日志大小很重要。某些操作可以最小日志量进行记录以减少其对事务日志大小的影响。事务日志是数据库的重要组件,... 阅读全文
posted @ 2015-10-09 18:56 BITALKER 阅读(738) 评论(0) 推荐(0)
摘要:WITH LastRestores AS ( SELECT DatabaseName = [d].[name] , [d].[create_date] , [d].[compatibility_level] , [d].[collation_name] , r.*, RowNum = ROW_NUMBER() OVER (PARTITION BY d.Name ORDER BY ... 阅读全文
posted @ 2015-08-10 21:46 BITALKER 阅读(385) 评论(0) 推荐(0)
摘要:唯一索引(UNIQUE INDEX)当主键创建时如果不设置为聚集索引,那么就一定是唯一的非聚集索引。实际上,唯一索引,故名思议就是它要求该列上的值是唯一的。唯一索引能够保证索引键中不包含重复的值,从而使表中的每一行从某种方式上具有唯一性。创建 UNIQUE 约束和创建与约束无关的唯一索引并没有明显的... 阅读全文
posted @ 2015-06-30 19:02 BITALKER 阅读(1407) 评论(0) 推荐(0)
摘要:索引是与表或视图关联的磁盘上结构,可以加快从表或视图中检索行的速度。 索引包含由表或视图中的一列或多列生成的键。 这些键存储在一个结构(B 树)中,使 SQL Server 可以快速有效地查找与键值关联的行。表或视图可以包含以下类型的索引:聚集聚集索引根据数据行的键值在表或视图中排序和存储这些数据行... 阅读全文
posted @ 2015-06-27 17:08 BITALKER 阅读(406) 评论(0) 推荐(0)
摘要:前言 查询优化器使用统计信息来创建可提高查询性能的查询计划,对于大多数查询,查询优化器已经为高质量查询计划生成必要的统计信息,但是在少数情况下,您需要创建附加的统计信息或者修改查询设计以得到最佳结果。因此理解和合理使用统计信息是数据库优化的方式之一。 统计信息的分类 根据创建源的不同,统计信息分为两种表统计信息和索引统计信息,除非你自定义它们,否则它们之间没有本质的区别。 索引统计信... 阅读全文
posted @ 2015-06-19 21:45 BITALKER 阅读(1653) 评论(0) 推荐(0)
摘要:在使用数据库的过程中,总会碰到一些特别的需求。有时候需要储存中文字符,区分大小写或者按照中文的比划顺序排序。这就涉及到了对数据库排列规则的选择。 我们一般可以选择数据库名称--》右键属性(Properties)--》功能(optiotion)--》排序方式(Collation)选择。 * 由于没有中文版的数据库,中文翻译可能有误。 那这些不同的排序方式究竟有什么区别呢? 排序规则... 阅读全文
posted @ 2015-01-17 17:07 BITALKER 阅读(665) 评论(0) 推荐(0)