国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術(shù)文章
文章詳情頁

SQL Server數(shù)據(jù)庫六種數(shù)據(jù)移動(dòng)方法

瀏覽:100日期:2023-11-07 12:45:03
本人從事的工作是數(shù)據(jù)庫管理員,要維護(hù)多臺(tái)服務(wù)器中的數(shù)據(jù)庫,經(jīng)常把某臺(tái)服務(wù)器中的某個(gè)數(shù)據(jù)庫移動(dòng)到另外一臺(tái)服務(wù)器,對(duì)數(shù)據(jù)的移動(dòng)有些心得體會(huì),希望和大家共同交流。

1. 通過工具DTS的設(shè)計(jì)器進(jìn)行導(dǎo)入或?qū)С鯠TS的設(shè)計(jì)器功能強(qiáng)大,支持多任務(wù),也是可視化界面,容易操作,但知道的人一般不多,如果只是進(jìn)行SQL Server數(shù)據(jù)庫中部分表的移動(dòng),用這種方法最好,當(dāng)然,也可以進(jìn)行全部表的移動(dòng)。在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ù),直接運(yùn)行DTS包就行,省時(shí)省力。也可以直接打開DTS設(shè)計(jì)器,方法是展開服務(wù)器名稱下面的Data Transformation Services,選Local Packages,在右邊的窗口中右擊,選New Package,就打開了DTS設(shè)計(jì)器。值得注意的是:如果源數(shù)據(jù)庫要拷貝的表有外鍵,注意移動(dòng)的順序,有時(shí)要分批移動(dòng),否則外鍵主鍵,索引可能丟失,移動(dòng)的時(shí)候選項(xiàng)旁邊的提示說的很明白,或者一次性的復(fù)制到目標(biāo)數(shù)據(jù)庫中,再重新建立外鍵,主鍵,索引。

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

2. 利用Bcp工具

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

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

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

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

把數(shù)據(jù)庫的數(shù)據(jù)文件(*.mdf)和日志文件(*.ldf)都拷貝到目的服務(wù)器,在SQL Server Query Analyzer中用語句進(jìn)行恢復(fù): EXEC sp_attach_db @dbname = 'test', @filename1 = 'd:mssql7datatest_data.mdf', @filename2 = 'd:mssql7datatest_log.ldf' 這樣就把test數(shù)據(jù)庫附加到SQL Server中,可以照常使用。如果不想用原來的日志文件,可以用如下的命令: EXEC sp_detach_db @dbname = 'test' EXEC sp_attach_single_file_db @dbname = 'test', @physname = 'd:mssql7datatest_data.mdf' 這個(gè)語句的作用是僅僅加載數(shù)據(jù)文件,日志文件可以由SQL Server數(shù)據(jù)庫自動(dòng)添加,但是原來的日志文件中記錄的數(shù)據(jù)就丟失了。

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

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

區(qū)別是前者把數(shù)據(jù)插入一個(gè)新表(先建立表,再插入數(shù)據(jù)),后者是把數(shù)據(jù)插入已經(jīng)存在的一個(gè)表中,我個(gè)人喜歡后者,因?yàn)樵诰幊痰慕Y(jié)構(gòu)上,應(yīng)用的范圍上,第二條語句強(qiáng)于前者。

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

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

1>SQL Server Agent必須啟動(dòng),MSDTC必須啟動(dòng)。 2>所有要復(fù)制的表必須有主鍵。 3>如果表中有text或image數(shù)據(jù)類型,必須使用with log選項(xiàng),不能使用with no_log選項(xiàng)。 另外max text repl size選項(xiàng)控制可以復(fù)制的文本和圖像數(shù)據(jù)的最大規(guī)模,超過這個(gè)限制的操作將失敗。 4>在要進(jìn)行復(fù)制的計(jì)算機(jī)上,應(yīng)該至少是隱含共享,即共享名是C$或D$…。 5>為SQL Server代理使用的Windows NT帳號(hào)不能是一個(gè)本地的系統(tǒng)帳號(hào),因?yàn)楸镜氐南到y(tǒng)帳號(hào)不允許網(wǎng)絡(luò)存取。 6>如果參與復(fù)制的服務(wù)器在另外的計(jì)算機(jī)域中,必須在這些域之間建立信任關(guān)系。

:如果源數(shù)據(jù)庫要拷貝的表有外鍵,注意移動(dòng)的順序,有時(shí)要分批移動(dòng),否則外鍵主鍵,索引可能丟失,移動(dòng)的時(shí)候選項(xiàng)旁邊的提示說的很明白,或者一次性的復(fù)制到目標(biāo)數(shù)據(jù)庫中,再重新建立外鍵,主鍵,索引。

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

2. 利用Bcp工具

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

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

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

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

把數(shù)據(jù)庫的數(shù)據(jù)文件(*.mdf)和日志文件(*.ldf)都拷貝到目的服務(wù)器,在SQL Server Query Analyzer中用語句進(jìn)行恢復(fù): EXEC sp_attach_db @dbname = 'test', @filename1 = 'd:mssql7datatest_data.mdf', @filename2 = 'd:mssql7datatest_log.ldf' 這樣就把test數(shù)據(jù)庫附加到SQL Server中,可以照常使用。如果不想用原來的日志文件,可以用如下的命令: EXEC sp_detach_db @dbname = 'test' EXEC sp_attach_single_file_db @dbname = 'test', @physname = 'd:mssql7datatest_data.mdf' 這個(gè)語句的作用是僅僅加載數(shù)據(jù)文件,日志文件可以由SQL Server數(shù)據(jù)庫自動(dòng)添加,但是原來的日志文件中記錄的數(shù)據(jù)就丟失了。

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

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

區(qū)別是前者把數(shù)據(jù)插入一個(gè)新表(先建立表,再插入數(shù)據(jù)),后者是把數(shù)據(jù)插入已經(jīng)存在的一.

標(biāo)簽: Sql Server 數(shù)據(jù)庫
相關(guān)文章:
主站蜘蛛池模板: 久久99久久精品免费思思6 | 黄 色 三 片 | 99久久国产免费福利 | 亚洲一级高清在线中文字幕 | 一区二区三区免费视频 www | 久久99国产亚洲高清观看首页 | 玖草在线观看 | 99小视频| youjizz日韩| 中国国产一级毛片 | 亚洲看黄 | 一级做a爱片特黄在线观看免费看 | 高清欧美日本视频免费观看 | 国产呦系列呦交 | 最新亚洲情黄在线网站无广告 | 国产真实乱子伦精品视 | 俄罗斯极品美女毛片免费播放 | 三级视频网站在线观看播放 | 精品国产一区二区三区免费看 | 成年男女免费视频 | a毛片在线还看免费网站 | 一区欧美| 一级做a爰片久久毛片美女 一级做a爰片久久毛片免费看 | 亚洲国产欧美在线人成aaa | 韩国日本三级在线观看 | 色在线免费视频 | 午夜丝袜美腿福利视频在线看 | 男人躁女人躁的好爽免费视频 | 亚洲欧美另类自拍第一页 | 伊人波多野结衣 | 日韩欧美精品一区二区三区 | 性生话一级国产片 | 欧美一级毛片欧美一级 | 丝袜美腿在线不卡视频播放 | 亚洲欧美日韩久久精品第一区 | www成人| 亚洲美女在线观看播放 | 日韩中文字幕精品久久 | 国产精品麻豆一区二区三区v视界 | 中文字幕一区二区三区在线观看 | 国产成人十八黄网片 |