將數(shù)據(jù)庫直接備份到網(wǎng)絡(luò)上其它計算機硬盤

字號:

SQL Server 2000下將數(shù)據(jù)庫直接備份到網(wǎng)絡(luò)上其它計算機硬盤:
    具體方法如下:
    1.兩臺機器(數(shù)據(jù)庫所在的機器和存放備份文件的機器)都需要建一個同名同密碼的用戶,方便起見,將這兩個用戶都直接歸到管理員組下;
    2.將數(shù)據(jù)庫的啟動帳戶設(shè)置成剛才所建立的那個帳戶,并重新開啟SQL服務(wù);
    3.假設(shè)遠程機器的IP是192.168.61.234,共享為默認共享f$,先用查詢分析器登陸到本地的SQL服務(wù)器(用sa和信任模式都可以),在master下執(zhí)行xp_cmdshell 'dir \\192.168.61.234\f$'看有沒有結(jié)果,還是有報錯的,如有報錯,請根據(jù)錯誤提示檢查;
    4.執(zhí)行以下備份語句可將數(shù)據(jù)庫備份到遠程硬盤上,以crm2k為例:
    backup database crm2k to disk='\\192.168.61.234\f$\crm2k0722_2.dmp'
    5.同時注意,一定要用“\\機器名或IP”不能用映射的盤符。
    注釋:
    直接備份到遠程硬盤并不是個好主意,一方面速度慢,另一方面網(wǎng)絡(luò)傳輸過程中可能出現(xiàn)意外。還是直接備份到本地,再拷到遠程硬盤的好,用SQL的腳本可以調(diào)用:“調(diào)用master..xp_cmdshell 'copy...'實現(xiàn)?!?BR>    另外,xp_cmdshell是一個個十分有用的擴展存儲過程,它可以在SQL中執(zhí)行WINDOWS的命令行命令,在使用SQL過程中益處很大。
    本機備份和還原數(shù)據(jù)庫的Transact-SQL實現(xiàn)如下:
    backup database 數(shù)據(jù)庫名稱 to disk = 'C:\DATA1'(具體選擇實際的路徑名稱)
    restore database 數(shù)據(jù)庫名稱 from disk = 'C:\yuhua.bak'(具體選擇實際的路徑名稱)