SQL Server 数据库状态选项
選項 1、
? ? ? ? single_user(單用戶),multi_user(多用戶),restricted_user(受限用戶);
? ? ? ? 描述數據庫的用戶訪問屬性,它們互斥,設置其中任何一個選項就會取消對其它選項的設置
? ? ? ? single_user模式的數據庫每次只能有一個連接。
? ? ? ? restricted_user模式可以有多個連接,前提是這些用戶要是被認為是‘合格’的如 sysadmin,dbcreator,dbowner。
? ? ? ? multi_user任何有效的用戶都可以連接。
? ? ? ? 例子:
? ? ? ? ? ? ? alter database studio
? ? ? ? ? ? ? set single_user
? ? ? ? ? ? ? with
? ? ? ? ? ? ? rollback immediate ; ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ---- ? ? ? | rollback after 1000|no_wait;
? ? ? ? ? ? ? go
? ? ? ? ? ? ??
? ? ? ? ? ? ? 注意:這個時候只有一個連接可以操作數據庫,如果別的連接想要操作數據庫,它會失敗,不是因為它的權限問題,而是只可以有一個連接。
選項 2、
? ? ? ? ?online, offline, emergency 它們互斥
? ? ? ? ?如果數據被設置為offline,它就會關閉而且完全關掉,并且標記為脫機,數據庫脫機時不可以有被修改,如果數據庫
? ? ? ? ?中有任何連接都不可以被標記為offline。
? ? ? ? ?例子:
? ? ? ? ? ? ? ?select name , state_desc
? ? ? ? ? ? ? ?from sys.databases
? ? ? ? ? ? ? ?where name = 'studio'
? ? ? ? ? ? ? ?with?rollback immediate ; ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ---- ? ? ? | rollback after 1000|no_wait;
? ? ? ? ? ? ? ?go
? ? ? ? ? ? ? ?
? ? ? 注意:
? ? ? ? ? ? 對于數據庫的狀態我們可以設置是只有 ?offline ,online,emergency! ? 它的一些別的狀態我們是不可能對它進行設置的
? ? ? ? ? ? 如:從備份中還原的過程會對應 ? ?recovering ,如果出于一些原因沒有辦法完成還原就會對應 ? recovery_pending;
? ? ? ? ? ? 如:還原過程中檢測出了數據損壞就會對應 suspect,數據庫就會變得完全不可用,很多情況下可以把數據庫設置為 emergency
? ? ? ? ? ? ? ? ? 從而可以對它進行只讀操作,如果的丟失數據庫的一個或多個日志文件,在將數據庫復制到新位置時,用emergency 模式還
? ? ? ? ? ? ? ? ? 還可以對數據庫進行訪問。從recovery_pending 轉換到 emergency時SQL Server會關閉數據庫,然后用特殊的標記重新
? ? ? ? ? ? ? ? ? 啟動,這樣會跳過恢復過程,跳過恢復意味著可能會有邏輯上的錯誤或物理上的不一致(如 索引丟失,斷開頁面)?
選項 3、
? ? ? ? ?read_only ,read_write
? ? ? ? ?----------------------- ?
? ? ? ? alter database studio
? ? ? ? set read_only
? ? ? ? with
? ? ? ? ? ? ? rollback immediate;?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ---- ? ? ? | rollback after 1000|no_wait;
? ? ? ? go
----------------------------------------------------------------------------------------------------------------------------------------------------
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 狀態選項都可以和
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??rollback immediate | rollback after 1000 | no_wait;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?配合
?
轉載于:https://www.cnblogs.com/JiangLe/p/4036629.html
總結
以上是生活随笔為你收集整理的SQL Server 数据库状态选项的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: TinyXml高速入门(一)
- 下一篇: 《白发魔女传》里面的一首诗