MS SQL入門基礎 移動資料庫

2022-03-02 17:17:23 字數 1826 閱讀 4376

在sql server 中可以使用拆分(detach)和附加(attach)的方法來移動資料庫。拆分資料庫是從伺服器中移去邏輯資料庫,但不會將作業系統中的資料庫檔案刪除。附加資料庫將會建立乙個新的資料庫,並複製儲存在已有的資料庫檔案和事務日誌檔案中的資料。使用系統儲存過程sp_detach_db 來拆分資料庫,用系統儲存過程sp_attach_db 來附加資料庫。

sp_detach_db 系統儲存過程的語法如下:

sp_detach_db [@dbname =] 'database_name'

[, [@skipchecks =] 'skipchecks']

其中[@skipchecks =] 'skipchecks'子句中skipchecks 的值為true 或false。 當skipchecks的值為true 時,指定在執行此過程之前不需要對資料庫中的所有表執行update statistics命令;為false 時,則需要執行update statistics 命令。

sp_attach_db 系統儲存過程的語法如下:

sp_attach_db [@dbname =] 'dbname',

[@filename1 =] 'filename_n' [,...16]

其中「filename_n」包括檔案的路徑和物理名稱。最多可指定16 個檔案。檔案中必須包含主資料庫檔案。如果需要附加的檔案超過了16 個,就必須使用帶for attach 子句的create database 命令來代替。

注意:sp_attach_db系統儲存過程中只能作用於那些已經用sp_detach_db系統儲存過程從伺服器中拆分出來的資料庫。

例6-16:移動資料庫mytest 到e:sql data 目錄下。

(1) 在sql server query analyzer 中執行系統儲存過程sp_helpdb, 得到mytest資料庫所包含的檔名稱、數量、型別、存放位置等資訊。命令語句如下:

exec sp_helpdb mytest

(2) 在sql server query analyzer 中執行sp_detach_db 系統儲存過程,拆分mytest資料庫。命令語句如下:

exec sp_detach_db mytest, true

執行結果如下:

successfully detached database 'mytest1'.

dbcc execution completed. if dbcc printed error messages, contact your system administrator.

(3) 在作業系統的資料夾視窗中用剪下或貼上的方式直接將與資料庫相關的作業系統檔案移動到e: sql data 2000 server 目錄下。即將d:sql datamytest_data.mdf 檔案和d:sqldatamytest_log.ldf 檔案移到e: sql data 2000

(4) 在sql server query analyzer 中執行sp_attach_db 系統儲存過程,附加檔案到mytest 資料庫。命令語句如下:

exec sp_attach_db @dbname = 'mytest',

@filename1 = 'e:sql datamytest_data.mdf',

@filename2 = 'e:sql datamytest_log.ldf'

執行結果如下:

successfully attached database 'mytest'.

至此已完成了資料庫的移動工作,可在enterprise manager 中檢視mytest 資料庫的資訊,也可以在sql server query analyzer 中執行系統儲存過程sp_helpdb 來檢視移動是否成功。

MS SQL入門基礎 資料庫索引

使用者對資料庫最頻繁的操作是進行資料查詢。一般情況下,資料庫在進行查詢操作時需要對整個表進行資料搜尋。當表中的資料很多時,搜尋資料就需要很長的時間,這就造成了伺服器的資源浪費。為了提高檢索資料的能力,資料庫引入了索引機制。本章將介紹索引的概念及其建立與管理。8.1.1 索引的概念 索引是乙個單獨的 ...

MS SQL入門基礎 壓縮資料庫

資料庫在使用一段時間後,時常會出現因資料刪除而造成資料庫中空閒空間太多的情況,這時就需要減少分配給資料庫檔案和事務日誌檔案的磁碟空間,以免浪費磁碟空間。當資料庫中沒有資料時,可以修改資料庫檔案屬性直接改變其占用空間,但當資料庫中有資料時,這樣做會破壞資料庫中的資料,因此需要使用壓縮的方式來縮減資料庫...

MS SQL入門基礎 資料庫全文檢索

sql server 2000 的standard edition 和enterprise edition 版本提供了對錶資料中字串的複雜檢索功能 全文檢索 full text searches 此功能需要在安裝時通過自定義安裝選項來新增。10.7.1 全文索引和目錄 全文檢索是通過使用全文索引 f...