一、问题最近有一个SQLServer数据库迁移项目,采用的方法是全量备份+差异备份,然后在目标机器上恢复,因为数据源数据库体积大,10T左右,所以打算直接备份到目标机器上,然后再恢复。但是SQLSERVER默认不识别网络映射驱动器。该怎么办?本文分享具体的实现过程和方法。二、解决方法当我们使用SQLServerManagementStudio浏览网络驱动器时,只能看到本地驱动器。在本文中,我们将展示如何使用SSMS查看其他驱动器以进行备份恢复。当你尝试从SQLServerManagementStudio浏览存储备份的驱动器时,你会发现只有本地驱动器,如下:1.映射一个网络驱动器为了让网络共享对SQLServer可见,首先将其映射为网络驱动器。您需要在Windows操作系统中使用“映射网络驱动器”来映射网络共享:要在SQLServer中识别网络驱动器,您需要使用xp_cmdshell命令。在执行此操作之前,您需要确保在您的SQL实例中启用了xp_cmdshell命令,因为它在默认情况下处于禁用状态。可以使用sp_configure命令启用它,如下所示:EXECsp_configure'showadvancedoptions',1;GORECONFIGURE;GOEXECsp_configure'xp_cmdshell',1GORECONFIGUREGO现在使用xp_cmdshell命令为SQL定义共享驱动器,如下所示:EXECXP_CMDSHELL'netuseH:\\RemoteServerName\ShareName'映射完成后,为了验证新的驱动器,可以使用以下命令显示这个新映射的驱动器中的所有文件:EXECXP_CMDSHELL'DirH:'让我们尝试浏览路径再次使用SQLServerManagementStudio。正如我们在下面看到的,我们现在可以看到H:驱动器:共享驱动器现在可见,任何数据库都可以备份到此网络路径,因为它现在对SSMS中的SQLServer可见。2.删除映射驱动器当不需要映射驱动器时,也可以使用以下命令删除路径:EXECXP_CMDSHELL'netuseH:/delete'3.总结本文讨论如何映射网络驱动器在SQLSERVER方法中。
