You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure Data Studio备份数据库存储位置及Docker容器备份访问问题

Azure Data Studio Docker容器备份文件访问指南

1. 先确认容器内的备份文件是否存在

你需要先登录到Docker容器里,确认/tmp目录下确实有备份文件:

  • 运行docker ps,找到你的SQL Server容器的ID或名称
  • 进入容器终端:docker exec -it <容器ID/名称> bash
  • 查看/tmp目录:ls -l /tmp,如果备份成功,这里能看到对应的.bak文件

2. 把容器内的备份文件复制到本地macOS

如果确认文件在容器里,用docker cp命令直接复制到本地:

docker cp <容器ID/名称>:/tmp/你的数据库备份文件.bak /Users/你的用户名/Desktop/

替换掉尖括号里的内容,后面的路径可以改成你想保存的任意本地位置,比如桌面、文档目录都可以。

3. 更省心的方法:直接备份到本地挂载目录

每次复制太麻烦,建议启动Docker容器时,把本地的一个目录挂载到容器里,这样备份文件会直接同步到本地:

  • 启动容器时添加挂载参数(示例):
docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=你的强密码" \
  -p 1433:1433 --name sqlserver-container \
  -v /Users/你的用户名/sql-backups:/var/opt/mssql/backups \
  -d mcr.microsoft.com/mssql/server:latest

这里把本地的/Users/你的用户名/sql-backups目录挂载到容器内的/var/opt/mssql/backups

  • 之后在Azure Data Studio里备份时,选择容器内的/var/opt/mssql/backups作为路径,备份文件会直接出现在本地的sql-backups目录里,不用再复制。

4. 排查备份路径是否正确

如果不确定备份到了哪里,可以在Azure Data Studio里运行SQL查询,确认实际备份路径:

SELECT backup_set_id, physical_device_name 
FROM msdb.dbo.backupset bs
JOIN msdb.dbo.backupmediafamily bmf ON bs.media_set_id = bmf.media_set_id
ORDER BY backup_start_date DESC;

这个查询会列出最近的备份记录和对应的文件路径,你可以根据路径去容器里找。

内容的提问来源于stack exchange,提问作者Miguel Cardoso

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 01:45:31