SLQ Tempdb 臨時數據庫的相關知識點
1、 安裝好Sql Server第一次啓動的時至少4個系統數據庫;
Master
Model
Msdb
Tempdb
安裝了以上的所有數據庫的服務器才能正常運行(事實上,如果缺少其中任意一個數據庫,服務器都無法運行)
2、 Tempdb 數據庫
在執行一個複雜或者大型查詢操作的時候,SQl Server 可能需要創建一些中間表來完成改項操作,這項工作是在tempdb數據庫中進行的。只要創建自己的臨時表,這些表就會創建在tempdb數據庫中,即使是在當前數據庫中創建的這些表的(別名是在本地數據庫中自動創建以供引用的,而物理表在tempdb中創建)。只要需要臨時存儲數據,就很可能是將數據存儲在tempdb數據庫中。
Tempdb數據庫與其他任意數據庫不同,不僅數據庫中的對象是臨時的,連數據本身也是臨時的,每次啓動SQL Server,tempdb數據庫是系統中唯一完全重建的數據庫
PS(注意事項):
從技術上來說,可以在tempdb數據庫中實際創建自己的 對象,但是我麼強烈反對進行該操作。可以在系統中任意有權訪問數據庫內創建臨時對象,該對象也會存儲在tempdb數據庫中。直接在tempdb數據庫中創建對象是沒有任何意義,只會增加在數據庫之間引用對象是產生混亂。
3、 不能對tempdb 數據庫執行以下操作
1.添加文件組。
2.備份或還原數據庫。
3.更改排序規則。 默認排序規則爲服務器排序規則。
4.更改數據庫所有者。 tempdb 的所有者是 sa。
5.創建數據庫快照。
6.刪除數據庫。
7.從數據庫中刪除 guest 用戶。
8.啓用變更數據捕獲。
9.參與數據庫鏡像。
10.刪除主文件組、主數據文件或日誌文件。
11.重命名數據庫或主文件組。
12.運行DBCC CHECKALLOC。
13.運行DBCC CHECKCATALOG。
14.將數據庫設置爲 OFFLINE。
15.將數據庫或主文件組設置爲 READ_ONLY。