国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數(shù)據(jù)庫 > SQL Server > 正文

在SQL Server中遷移數(shù)據(jù)的幾種方法

2024-08-31 01:02:20
字體:
供稿:網(wǎng)友
這篇文章主要介紹了在SQL Server中遷移數(shù)據(jù)的幾種方法,本文給出了6種方法來移動、遷移SQL Server中的數(shù)據(jù),需要的朋友可以參考下
 
 

1.通過工具"DTS"的設(shè)計器進(jìn)行導(dǎo)入或者導(dǎo)出

DTS的設(shè)計器功能強大,支持多任務(wù),也是可視化界面,容易操作,但知道的人一般不 多,如果只是進(jìn)行SQL Server數(shù)據(jù)庫中部分表的移動,用這種方法最好,當(dāng)然,也可以進(jìn)行全部表的移動。在SQL Server Enterprise Manager中,展開服務(wù)器左邊的+,選擇數(shù)據(jù)庫,右擊,選擇All tasks/Import Data...(或All tasks/Export Data...),進(jìn)入向?qū)J剑刺崾疽徊揭徊阶呔托辛耍锩娣值煤芗?xì),可以靈活的在不同數(shù)據(jù)源之間復(fù)制數(shù)據(jù),很方便的。而且可以另存成DTS包,如果 以后還有相同的復(fù)制任務(wù),直接運行DTS包就行,省時省力。也可以直接打開DTS設(shè)計器,方法是展開服務(wù)器名稱下面的Data Transformation Services,選Local Packages,在右邊的窗口中右擊,選New Package,就打開了DTS設(shè)計器。值得注意的是:如果源數(shù)據(jù)庫要拷貝的表有外鍵,注意移動的順序,有時要分批移動,否則外鍵主鍵,索引可能丟失,移 動的時候選項旁邊的提示說的很明白,或者一次性的復(fù)制到目標(biāo)數(shù)據(jù)庫中,再重新建立外鍵,主鍵,索引。

注釋:在建立數(shù)據(jù)庫時,建立外鍵,主鍵,索引的文件應(yīng)該和建表文件分開,而且用的數(shù)據(jù)文件也分開,并分別放在不同的驅(qū)動器上,有利于數(shù)據(jù)庫的優(yōu)化。

2.利用"Bcp"工具

雖然這種工具雖然在SQL Server7的版本中不推薦使用,但許多數(shù)據(jù)庫管理員仍很喜歡用它,尤其是用過SQL Server早期版本的人。Bcp有局限性,首先它的界面不是圖形化的,其次它只是在SQL Server的表(視圖)與文本文件之間進(jìn)行復(fù)制,但它的優(yōu)點是性能好,開銷小,占用內(nèi)存少,速度快。有興趣的朋友可以查參考手冊。

3.直接利用備份和恢復(fù)

首先需要對源數(shù)據(jù)庫進(jìn)行完全備份,備份到一個設(shè)備(device)上,然后把備份文 件復(fù)制到目的服務(wù)器上(恢復(fù)的速度快),進(jìn)行數(shù)據(jù)庫的恢復(fù)操作,在恢復(fù)的數(shù)據(jù)庫名中填上源數(shù)據(jù)庫的名字(名字必須相同),選擇強制型恢復(fù)(可以覆蓋以前數(shù) 據(jù)庫的選項),在選擇從設(shè)備中進(jìn)行恢復(fù),瀏覽時選中備份的文件就行了。這種方法可以完全恢復(fù)數(shù)據(jù)庫,包括外鍵,主鍵,索引。

4.直接拷貝數(shù)據(jù)文件

把數(shù)據(jù)庫的數(shù)據(jù)文件(*.mdf)和日志文件(*.ldf)都拷貝到目的服務(wù)器,在SQL   Server   Query   Analyzer中用語句進(jìn)行恢復(fù):

復(fù)制代碼代碼如下:

EXEC   sp_attach_db   @dbname   =   'test',   
@filename1   =   'd:se/mssql/' target='_blank'>mssql7data   est_data.mdf',   
@filename2   =   'd:mssql7data   est_log.ldf'

這樣就把test數(shù)據(jù)庫附加到SQL   Server中,可以照常使用。如果不想用原來的日志文件,可以用如下的命令:
復(fù)制代碼代碼如下:

EXEC   sp_detach_db   @dbname   =   'test'   
EXEC   sp_attach_single_file_db   @dbname   =   'test',   
@physname   =   'd:mssql7data   est_data.mdf'

這個語句的作用是僅僅加載數(shù)據(jù)文件,日志文件可以由SQL   Server數(shù)據(jù)庫自動添加,但是原來的日志文件中記錄的數(shù)據(jù)就丟失了。

 

5.在應(yīng)用程序中定制

可以在應(yīng)用程序(PB、VB)中執(zhí)行自己編寫的程序,也可以在Query Analyzer中執(zhí)行,這種方法比較靈活,其實是利用一個平臺連接到數(shù)據(jù)庫,在平臺中用的主要時SQL語句,這種方法對數(shù)據(jù)庫的影響小,但是如果用到遠(yuǎn) 程鏈接服務(wù)器,要求網(wǎng)絡(luò)之間的傳輸性能好,一般有兩種語句:

 

復(fù)制代碼代碼如下:

1>select   ...   into   new_tablename   where   ...   
2>insert   (into)   old_tablename   select   ...   from   ...   where   ...

區(qū)別是前者把數(shù)據(jù)插入一個新表(先建立表,再插入數(shù)據(jù)),后者是把數(shù)據(jù)插入已經(jīng)存在的一個表中,我個人喜歡后者,因為在編程的結(jié)構(gòu)上,應(yīng)用的范圍上,第二條語句強于前者。

 

6.SQL Server的復(fù)制功能

SQL Server提供了強大的數(shù)據(jù)復(fù)制功能,也是最不易掌握的,具體應(yīng)用請參考相關(guān)資料,值得注意的是要想成功進(jìn)行數(shù)據(jù)的復(fù)制工作,有些條件是必不可少的:

(1)SQL   Server   Agent必須啟動,MSDTC必須啟動。

(2)所有要復(fù)制的表必須有主鍵。

(3)如果表中有text或image數(shù)據(jù)類型,必須使用with   log選項,不能使用with   no_log選項。

另外max   text   repl   size選項控制可以復(fù)制的文本和圖像數(shù)據(jù)的最大規(guī)模,超過這個限制的操作將失敗。

(4)在要進(jìn)行復(fù)制的計算機(jī)上,應(yīng)該至少是隱含共享,即共享名是C$或D$…。

(5)為SQL   Server代理使用的Windows   NT帳號不能是一個本地的系統(tǒng)帳號,因為本地的系統(tǒng)帳號不允許網(wǎng)絡(luò)存取。

(6)如果參與復(fù)制的服務(wù)器在另外的計算機(jī)域中,則需要在這些域之間建立信任關(guān)系。


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 钦州市| 大宁县| 贵州省| 巩义市| 孝昌县| 宁南县| 德令哈市| 万宁市| 宜川县| 滁州市| 中西区| 肥西县| 岳西县| 温州市| 拉萨市| 瑞金市| 马山县| 濮阳县| 乌鲁木齐市| 城步| 宁河县| 福安市| 固阳县| 策勒县| 六枝特区| 永春县| 青田县| 和田县| 河北区| 苍南县| 西畴县| 榕江县| 丰台区| 永年县| 鹤峰县| 连江县| 屯昌县| 石泉县| 巢湖市| 贵港市| 石城县|