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

通过rClone挂载的S3驱动器未在SQL Server Management Studio中显示

解决rClone挂载S3驱动器作为SQL Server恢复源的问题

核心问题根源

rClone默认以当前登录用户的上下文挂载S3驱动器,SQL Server服务(运行在NT Service\MSSQLSERVER账户下)无法访问其他用户上下文的虚拟挂载点;同时虚拟驱动器不支持常规NTFS权限设置,导致手动添加的权限会直接失效。

解决方案步骤

1. 重新配置rClone挂载,让SQL Server服务账户能访问

方法一:以SQL Server服务账户身份挂载S3

  • 打开任务计划程序,创建新基本任务:
    • 触发器设为「启动时」,确保开机自动挂载
    • 操作选「启动程序」,程序路径填rClone完整路径(例:C:\rclone\rclone.exe)
    • 添加参数:mount s3:你的存储桶名 X: --vfs-cache-mode writes --allow-non-empty(X:替换为你的驱动器号,--vfs-cache-mode writes用于适配SQL恢复的写入缓存需求)
    • 「常规」选项卡勾选「不管用户是否登录都要运行」,并选择「使用最高权限运行」
    • 切换到「用户账户」选项卡,点击「更改用户或组」,输入NT Service\MSSQLSERVER,验证名称无误后确定
    • 完成任务创建,手动运行一次,确认驱动器挂载成功

方法二:修改rClone挂载参数,允许所有用户访问

若不想用任务计划,可通过参数开放访问(需先配置WinFsp):

  • 打开WinFsp控制面板(rClone安装时通常附带),切换到「服务」选项卡,勾选「允许非管理员用户访问文件系统」并应用
  • 重新执行挂载命令:rclone mount s3:你的存储桶名 X: --vfs-cache-mode writes --allow-other --allow-non-empty

2. 验证SQL Server访问权限

  • 打开SSMS,执行以下T-SQL测试挂载驱动器的访问权限:
-- 若xp_cmdshell未启用,先执行以下语句开启
sp_configure 'show advanced options', 1;
RECONFIGURE;
sp_configure 'xp_cmdshell', 1;
RECONFIGURE;

-- 测试驱动器访问
EXEC xp_cmdshell 'DIR X:\'
  • 若能列出文件,说明权限配置成功,可直接在恢复数据库时选择该驱动器的备份文件

3. 替代方案:直接通过S3 URL恢复(无需挂载)

如果挂载方案仍有问题,SQL Server 2022及以上版本支持直接读取S3兼容存储的备份文件:

  • 先配置S3访问凭据:
CREATE CREDENTIAL [s3://你的存储桶名]
WITH IDENTITY = 'S3 Access Key',
SECRET = '你的AccessKeyID:你的SecretAccessKey';
  • 执行恢复命令:
RESTORE DATABASE 你的数据库名
FROM URL = 's3://你的存储桶名/备份文件路径.bak'
WITH
    MOVE '数据文件逻辑名' TO '本地磁盘路径\你的数据库名.mdf',
    MOVE '日志文件逻辑名' TO '本地磁盘路径\你的数据库名.ldf',
    REPLACE,
    STATS = 10;

内容的提问来源于stack exchange,提问作者C Cost

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.21 14:36:53