SQL Server 備份和還原的如何使網(wǎng)絡(luò)驅(qū)動(dòng)器
一、問題
最近有一個(gè)SQLSERVER的數(shù)據(jù)庫(kù)遷移項(xiàng)目,采用的方法是全量備份+差異備份,然后在目標(biāo)機(jī)器上進(jìn)行還原,由于源庫(kù)的數(shù)據(jù)量非常大,大概10T左右,所以打算直接備份至target機(jī)器,然后再進(jìn)行還原。但是SQLSERVER默認(rèn)不識(shí)別網(wǎng)絡(luò)映射驅(qū)動(dòng)器。該怎么辦?本文分享一下具體的實(shí)施過(guò)程和方法。
二、解決方案
當(dāng)我們使用 SQL Server Management Studio 瀏覽網(wǎng)絡(luò)驅(qū)動(dòng)器時(shí),只能看到本地驅(qū)動(dòng)器。在本文 中,我們將展示如何查看其他驅(qū)動(dòng)器以便使用 SSMS 進(jìn)行備份恢復(fù)。當(dāng)您嘗試從 SQL Server Management Studio 瀏覽存放備份的驅(qū)動(dòng)器時(shí),您會(huì)發(fā)現(xiàn)只有本地驅(qū)動(dòng)器,具體如下:
1、映射網(wǎng)絡(luò)驅(qū)動(dòng)器
為了使網(wǎng)絡(luò)共享對(duì) SQL Server 可見,首先將其映射為網(wǎng)絡(luò)驅(qū)動(dòng)器。您需要使用 Windows 操作系統(tǒng)中的“映射網(wǎng)絡(luò)驅(qū)動(dòng)器”來(lái)映射網(wǎng)絡(luò)共享:
要在 SQL Server 中識(shí)別該網(wǎng)絡(luò)驅(qū)動(dòng)器,您需要使用 xp_cmdshell 命令。在此之前,您需要確保在您的 SQL 實(shí)例中啟用了 xp_cmdshell 命令,因?yàn)槟J(rèn)情況下它是禁用的。可以使用 sp_configure 命令啟用它,如下所示:
EXEC sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO
EXEC sp_configure 'xp_cmdshell',1
GO
RECONFIGURE
GO
現(xiàn)在使用 xp_cmdshell 命令為 SQL 定義共享驅(qū)動(dòng)器,如下所示:
EXEC XP_CMDSHELL 'net use H: \\RemoteServerName\ShareName'
映射完成后,為了驗(yàn)證新驅(qū)動(dòng)器,您可以使用以下命令顯示該新映射驅(qū)動(dòng)器中的所有文件:
EXEC XP_CMDSHELL 'Dir H:'
讓我們?cè)俅螄L試使用 SQL Server Management Studio 瀏覽路徑。正如我們?cè)谙旅婵吹降?,我們現(xiàn)在可以看到 H: 驅(qū)動(dòng)器:
現(xiàn)在共享驅(qū)動(dòng)器是可見的,可以將任何數(shù)據(jù)庫(kù)備份到該網(wǎng)絡(luò)路徑,因?yàn)樗F(xiàn)在對(duì) SSMS 中的 SQL Server 可見。
2、刪除映射的驅(qū)動(dòng)器
當(dāng)你不需要映射的驅(qū)動(dòng)器之后,您也可以使用以下命令刪除該路徑:
EXEC XP_CMDSHELL 'net use H: /delete'
三、小結(jié)
本文討論了如何在SQLSERVER中如何映射網(wǎng)絡(luò)驅(qū)動(dòng)器的方法。