用sql語句實現分離和附加資料庫的方法

2022-09-25 03:42:11 字數 1368 閱讀 7443

對於用manage studio自己看著介面操作就可以應付了。

分離資料庫:

對於用儲存過程來分離資料庫,如果發現無法終止程式設計客棧使用者鏈結,可以使用alter database命令,並利用乙個能夠中斷已存在鏈結的終止選項來把資料庫設定為single_user模式,設定為snlbgcbpigle_user**如下:

alter database [databasename] set single_user with rollback immediate下面是分離資料庫的cmd命令

exec sp_detach_db databasename一旦乙個資料庫分離成功,從sql server角度來看和刪除這個資料庫沒有什麼區別。

附加資料庫:

對於附加資料庫,可以使用sp_attach_db儲存過程,或者使用帶有for attach選項的create database命令,在sql server2005或更高的版本中推薦使用後者,前者是為了向前相容,它正在逐漸淘汰,而後者更提供更多對檔案的控制。

create database databasename

on (filename = 'd:\database\dbname.mdf')

for attach | for attach_rebuild_log

然而對於nlbgcbp這樣的附加,我們要注意幾個地方。因為涉及到重建日誌。

1.對於乙個讀/寫資料庫,如果含有乙個可用的日誌檔案,無論使用for attach ,還是使用for attach_rebuld_log,都是一樣,都不會對此資料庫重建日誌檔案。如果日誌檔案不可用或者物理上沒有該日誌檔案,使用for attach或for attach_rebulid_log都會重建日誌檔案,所以如果我們複製乙個帶有大量日誌檔案的資料庫到另一台伺服器中,就可以只複製.mdf檔案,不用複製日誌檔案,然後使用for attach_rebuld_log選項重建日誌。條件是這台伺服器將主要使用或只用改資料庫的副本進行讀操作。

2.對於乙個唯讀資料庫,就有點區別了,如果日誌檔案不可用,那麼就不能更新主檔案,所以也就不能重建日誌,因此當我們附加乙個唯讀資料庫是,必須在for attach從句中指定日誌檔案。

如果使用附加資料庫重建了日誌檔案。使用for attach_rebuild_log會中斷日誌備份鏈,進行這種操作之前最好做一次資料庫完全備份。

使用sp_程式設計客棧detach_db儲存過程乙個好處就是可以保證乙個資料庫是被乾淨的關閉,那日誌檔案就不是附加資料庫所必須的,我們可以使用for attach_rebuild_log命令重建日誌,得到乙個最小的日誌檔案。也算是一種快速收縮乙個大日誌檔案的方法。

author:興百放 www.cppcns.com

web:

本文標題: 用sql語句實現分離和附加資料庫的方法

本文位址:

修改 分離和附加資料庫

一 修改資料庫 增大及縮小 方法1.可以直接資料庫屬性修改。但是必須注意,縮小資料庫的size,需要使用到任務 收縮。方法2.為了避免系統盲目的切除記憶體,最好使用命令修改 alter database pay modify name payment,size 2mb 二 分離和附加資料庫 1.分離...

通過SQL語句附加和分離資料庫

附加資料庫 sp attach db 將資料庫附加到伺服器。語法 sp attach db dbname dbname filename1 filename n 16 eg 下面的示例將 pubs 中的兩個檔案附加到當前伺服器。exec sp attach db dbname n pubs file...

SQL Server 分離和重新附加資料庫

對於分離乙個資料庫來說,我們可以用manage studio介面或者儲存過程。但是對於每一種方法都必須保證沒有使用者使用這個資料庫.接下來所講的都是對於用命令來分離或附加乙個資料庫。對於用manage studio自己看著介面操作就可以應付了。分離資料庫 對於用儲存過程來分離資料庫,如果發現無法終止...