【问题标题】:Why there is a difference between sp_helpfile vs sys.master_files?为什么 sp_helpfile 与 sys.master_files 之间存在差异?
【发布时间】:2017-12-07 17:32:07
【问题描述】:

您好,在使用 sql server 中的 restore 命令将数据库恢复到特定驱动器时,执行 sp_helpfile 后显示不正确的文件路径,但是 sys.master_files 显示正确的文件路径? 为什么sp_helpfile 显示不准确的路径?有人可以帮我理解这个吗?

【问题讨论】:

    标签: sql-server-2012 sql-server-2014 database-administration


    【解决方案1】:

    评论太长了。

    我怀疑您在运行sp_helpfile 时没有连接到正确的数据库。如果您查询sys.master_files,无论您连接到什么数据库,它都会返回相同的内容。但是,如果您不指定文件名,sp_helpfile 将使用默认连接。因此,如果您连接到[master],它将返回此数据库文件的结果。

    【讨论】:

    • 我同意。比较exec sp_helpfileselect * from sys.master_files where database_id = db_id()在同一上下文中运行的输出,路径应该始终匹配..
    • 但在我的情况下,它们并没有显示不同的路径
    • 你的两个查询的结果是什么@VikrantMore
    • sp_helpfile 显示我在手动恢复数据库时设置的路径,但是 sys.master_files 显示从恢复命令恢复数据库后的路径
    • 所以你正在恢复with move?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-31
    • 2021-10-01
    相关资源
    最近更新 更多