细化解析:如何更改数据库状态的事务终止

网络整理 - 07-27

  Microsoft® SQL Server™ 2000 能够很容易地关闭数据库或更改数据库的状态、自动终止受影响的用户会话并回滚相关的事务。受影响的会话可以立即终止,也可以在可选的超时限制下继续运行直到正常终止。

  经常需要停止数据库上的活动,或将数据库上的活动限制为执行维护操作或其它不会影响服务器运行的操作,例如:

  ◆单用户模式:只允许一个用户

  ◆受限用户模式:只允许 db_owner、dbcreator 或 sysadmin 角色的成员

  ◆脱机:数据库脱机

  ◆只读模式:不允许更改

  转换到这些状态中的任何一种都要求终止不满足新状态要求的事务和相关会话。

  有三种类型的事务终止:

  ◆正态分布

  防止启动新的事务。允许未完成的事务主动提交或回滚。

  ◆带超时限制的正常事务终止

  防止启动新的事务。允许未完成的事务主动提交或回滚,直到到达超时限制,这时将回滚事务。

  ◆即时事务终止

  即时终止防止启动新的事务,并且无条件地回滚未完成的事务。

  开始进行更改的用户保持连接状态并可以执行进一步的命令。

  使用 ALTER DATABASE 语句指定数据库的状态和事务终止类型。