Windows下的SQL Server备份文件BAK在Linux环境下还原遇到的问题

时间:2022-10-17 17:24:31

  前段时间在Linux环境下安装了最新的SQL Server2017,参照微软官方文档配置完成以后,将本地的BAK备份文件发送到了Linux下的一个文件夹,我在自己电脑上的SQL Server 2012management studio远程连接2017,但在还原的时候,选择文件路径,找到BAK文件选中还原,但出乎意料的失败了,查看错误原因惊奇的发现management studio自动生成的文件路径中,出现了windows路径和Linux路径的混乱,在Linux环境中的路径应该是A/B/back.bak,但management studio自动生成的路径中却出现了A/B\back.bak。两种操作系统的文件路径的斜杠'/'、'\'出现在了一起导致了备份文件还原数据库失败。在各种问搜索引擎无果后,最终还是参考了微软官方文档中使用sqlcmd工具还原了数据库。参考:https://docs.microsoft.com/zh-cn/sql/linux/sql-server-linux-migrate-restore-database?view=sql-server-2017