永发信息网

SQL Server常用到的几个设置选项

答案:2  悬赏:40  手机版
解决时间 2021-01-23 09:21
SQL Server常用到的几个设置选项
最佳答案
1. SET DEADLOCK_PRIORITY
  2. SET LOCK_TIMEOUT
  3.@@LOCK_TIMEOUT
  4.SET IDENTITY_INSERT
  5.SET IMPLICIT_TRANSACTIONS
  6.SET NOCOUNT
  7.@@ROWCOUNT
  8.SET ROWCOUNT
  9.SET TRANSACTION ISOLATION LEVEL
  10.SET XACT_ABORT
  1. SET DEADLOCK_PRIORITY
  说明:控制在发生死锁情况时会话的反应方式。如果两个进程都锁定数据,并且直到其它进程释放自己的锁时,每个进程才能释放自己的锁,即发生死锁情况。
  语法:SET DEADLOCK_PRIORITY { LOW | NORMAL | @deadlock_var }
  参数:LOW 指定当前会话为首选死锁牺牲品。Microsoft® SQL Server™ 自动回滚死锁牺牲品的事务,并给客户端应用程序返回 1205 号死锁错误信息。
  NORMAL 指定会话返回到默认的死锁处理方法。
  @deadlock_var 是指定死锁处理方法的字符变量。如果指定 LOW,则 @deadlock_var 为 3;如果指定 NORMAL,则 @deadlock_var 为 6。
  注释:SET DEADLOCK_PRIORITY 的设置是在执行或运行时设置,而不是在分析时设置。
  权限:SET DEADLOCK_PRIORITY 权限默认授予所有用户。
  2. SET LOCK_TIMEOUT
  说明:指定语句等待锁释放的毫秒数。
  语法:SET LOCK_TIMEOUT timeout_period
  参数:timeout_period 是在 Microsoft® SQL Server™ 返回锁定错误前经过的毫秒数。值为 -1(默认值)时表示没有超时期限(即无限期等待)。
  当锁等待超过超时值时,将返回错误。值为 0 时表示根本不等待,并且一遇到锁就返回信息。
  注释:在连接开始时,该设置的值为 -1。设置更改后,新设置在其余的连接时间里一直有效。
  SET LOCK_TIMEOUT 的设置是在执行或运行时设置,而不是在分析时设置。
  READPAST 锁定提示为该 SET 选项提供了另一种方式。
  权限:SET LOCK_TIMEOUT 权限默认授予所有用户。
全部回答
我们知道,sql server事务日志主要是用来记录所有事务对数据库所做的修改,如果系统出现故障,它将成为最新数据的唯一来源。日志的操作常有以下几个应用: 一、事务日志文件ldf的丢失 当我们不小删除或者ldf文件丢失的时候,数据库只剩下mdf文件,此时直接通过附加mdf是无法恢复数据库的,那我们怎么样才能恢复数据库呢?我们可以把sql server的日志文件分为两种形式:一类是无活动事务的日志,另一类是有活动事务的日志,我们分别根据两种情况来进行数据库恢复。 1、无活动事务的日志恢复 当文件并没有发生活动性的日志,我们就可以很容易的利用mdf文件就可以直接恢复数据库了,具体操作方法如下: 1)数据库要是没有日志,就会处于置疑的状态,我们先可以通过企业管理器中在对应数据库中点击右键,然后在“所有任务”下选择“分离数据库”把数据库进行分离; 2)利用mdf文件附加数据库生成新的日志文件,可用企业管理器中数据库点击右键选择“所有任务”下的“附加数据库”把数据库附加上。 这样就可以直接恢复好数据库了,而如果数据库的日志文件中含有活动事务,利用此方法就不能恢复数据库,所以得使用下面的方法。 2、有活动事务的日志恢复 当日志发生了事务的记录,丢失的时候,我们采用如下的方法来实现: 1)新建一个同名的数据库,如原数据库名为mydb,然后停止sql server服务器,再把数据库主数据mdf文件移走,然后重新启动sql server服务器,新建一个同名的数据库mydb,然后再停止sql server服务器,把移走的mdf文件再覆盖回来,然后再重新启动sql server服务器,在默认的情况下,系统表是不允许被修改的,我们需要运行以下语句才可以,在查询分析器中,选择master数据库,然后执行: sp_configure 'allow updates',1 reconfigure with override 接着运行以下语句,把sysdatabases表中mydb数据库的status属性设为‘37268’,把mydb数据库设置为紧急模式。 update sysdatabases set status=32768 where name=’mydb’ 然后再把数据库mydb设置为单用户模式,然后重启sql server服务器,并把数据库mydb设为单用户模式 sp_dboption 'mydb','single user', 'true'
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
电视剧 少林寺传奇2中,朱粲是怎么死的?
沐川造型怎么去啊,我要去那办事
发源地形象设计地址在什么地方,想过去办事
发雅丝造型地址在什么地方,我要处理点事
天然植物生发养发俱乐部地址在什么地方,想过
华为荣耀6用着突然死机了,怎么办?
唐古造型怎么去啊,我要去那办事
梵古造型地址好找么,我有些事要过去
顶尖发艺怎么去啊,我要去那办事
单选题下列国家首都,只作为政治中心而新建的
新领域国际美发沙龙地址在什么地方,我要处理
完美专业养发护发地址在什么地方,想过去办事
养发师植物养发馆地址在什么地方,想过去办事
写出符合下列要求的物质的化学式:①能作为气
赣州市知识产权局地址在什么地方,想过去办事
推荐资讯
沁丰茶楼地址在什么地方,想过去办事
靓影美容美发地址好找么,我有些事要过去
下列句子中划线的词语解释不正确的一项是A.托
上声语言艺术中心地址有知道的么?有点事想过
亮剑的故事是真实的吗?李云龙真的有吗?
启萌亲子园桃山区第一分园地址有知道的么?有
半睡半醒的状态下作梦是梦吗?为什么我自己记
永恒体育地址有知道的么?有点事想过去
打电话提示无法连接到移动网络
坟上长草好不好
单选题Ifyou________agreatsoccerplaye
长春一汽高等技术专科学校
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?