如何備份資料庫到本地對映網路驅動器

2021-09-21 19:37:51 字數 1018 閱讀 5270

我們使用

對映驅動器備份

sql server

資料庫的時候可能會遇到下面的錯誤:

」失敗,錯誤如下

:「無法開啟備份裝置

'z:\gbdb_backup_201306302002.bak'

。出現作業系統錯誤

3(系統找不到指定的路徑。)。

資料庫無法找到路徑,但是如果我們直接開啟的話是可以正常訪問的,那麼為什麼

sql server

無法訪問呢?

因為sql server

是作為service執行

的,所以無法感知到共享路徑對映的網路驅動盤。因為

sql server

服務使用

sql server

啟動賬戶安全上下文執行在本地控制台上下文環境。而對映磁碟驅動器只是對於特定的

session

可見,對於在本地控制台上下文環境中啟動的服務是不可見的。

如果一定要備份到對映磁碟可以使用下面的方法:

1. 開啟sql server執行下面的命令exec xp_cmdshell 'net use '

--:對映驅動器碟符 --: unc 共享路徑

2. 應該可以備份到上面建立的驅動器碟符了。

net use 文件參考:

這樣做的缺點是當sql server服務重啟的時候,對映的磁碟將會丟失。如果要持續對映磁碟,需要建立乙個啟動的儲存過程

。另外還有安全性的考量(xp_cmdshell

簡單的辦法是直接用unc備份。這樣只需要確保sql server啟動賬戶有對於遠端共享資料夾有完全控制許可權。

理想情況下,服務不應該訪問本地對映驅動器,因為

本地對映驅動器在不同的

windows

版本會有不同的特性,上面提到的方法不一定在所有的情景下可用。

參考:180362  info: services and redirected drives

備份資料庫到對映盤

一定要在sqlserver2005裡面對映,在系統對映是不能用的 exec master.xp cmdshell net use z 192.168.0.11 其他備份 kq 278016tshily user 192.168.0.11 administrator 刪除對映 exec master....

對映資料庫到本地

對映資料庫到本地,一般使用場景是第三方資料庫版本過高,jdk版本不支援那麼高的伺服器,比如說jdk6不支援sqlserver2016,解決辦法就是在本地sqlserver建立橋接 也算是軟連線 到對方高版本資料庫 通過ip 然後 連線本地資料庫,在訪問資料來源的時候帶上連線名。本例連線名是srv l...

oracle如何備份資料庫

1.建立表空間 sql命令 create tablespace jeefh2 gblz17 logging datafile u02 oradata orcl jeefh2 gblz17.dbf 表空間檔案儲存位置 size 1024m 表空間檔案初始大小 autoextend on 表空間自動增長...