- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我有一个包含数据库备份的 bak 文件。
我想将这个数据库恢复到一个新位置,我需要从这个文件中检索数据库名称,知道如何做吗?
我需要它来覆盖数据文件位置和日志文件位置。
感谢您的帮助。
最佳答案
RESTORE FILELISTONLY
FROM DISK = 'full path to your .bak file'
将显示备份中的当前文件名。如果一个文件中有多个备份并且您没有指定“WITH FILE = X
”,您将只会获得文件中第一个备份的信息。
RESTORE DATABASE MyNewDBname
FROM DISK = 'full path to your .bak file'
WITH
MOVE 'LogicalFilename_Data' TO 'D:\somepath\...\MyDB.mdf',
MOVE 'LogicalFilename_Log' TO 'D:\somepath\...\MyDB.ldf';
GO
SMO 的粗略轮廓(未测试):
Restore restoreDB = new Restore();
restoreDB.Database = myDatabase.Name;
// Specify whether you want to restore database, files or log
restoreDB.Action = RestoreActionType.Database;
restoreDB.Devices.AddDevice(@"D:\somepath\...\MyDBFull.bak", DeviceType.File);
restoreDB.ReplaceDatabase = true; // will overwrite any existing DB
restoreDB.NoRecovery = true;
// you can Wire up events for progress monitoring */
// restoreDB.PercentComplete += CompletionStatus;
// restoreDB.Complete += RestoreCompleted;
restoreDB.SqlRestore(myServer);
Ref .
使用 SMO,您可以使用 Restore.ReadFileList 检索文件列表
关于c# - 从 bak 文件中检索数据库名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4176840/
如何检查我的文件夹中是否至少有一个文件*.bak? 最佳答案 您可以使用Directory.GetFiles()列出特定目录中的所有文件。第二个参数是要搜索的模式(包括通配符)。这样的事情应该做到这一
我使用相同的 .bak 文件创建备份。我制作了一个脚本来自动恢复这个备份。 RESTORE DATABASE [xxx] FROM DISK = N'xxx.bak' WITH FILE = 10
在 SQL Server 2008R2 中,我尝试使用此处给出的 SQL 查询仅恢复位于一个文件夹中的多个数据库/BAK 文件 - http://www.karaszi.com/sqlserver/c
我有 sed 语句来替换我文件中的一些内容。它正在使用名为 file.bak 的备份 copu在替换内容之前。 sed -i.bak -r "s#^(.*/abc_def_APP/).*(/appli
The database was backed up on a server running version 8.00.2039. That version is incompatible with
我没有做过多少 SQL,对此还是很陌生,所以请原谅这可能是一个基本问题。 我被要求研究创建一个 SQL 作业来备份我们的数据库,将 .baks 存储在另一台机器上,然后将它们恢复到第二台服务器。我一直
我有一个在 Visual Studio 2008 中创建的网站,我需要将其上线。如何将数据库文件备份到 .bak,以便将其交给托管公司放置在服务器上? 最佳答案 从 SQL 提示符: BACKUP D
我有一个包含数据库备份的 bak 文件。 我想将这个数据库恢复到一个新位置,我需要从这个文件中检索数据库名称,知道如何做吗? 我需要它来覆盖数据文件位置和日志文件位置。 感谢您的帮助。 最佳答案 RE
我正在使用 C#、.NET 3.5 和 SMO 在 SQL Server 2005 中创建数据库(我们的生产数据库)到其他一些数据库(我们的 DEV 和测试数据库)的副本。 我已经设法从数据库创建备份
我使用 perl 脚本运行 perl -p -i.bak -e "..." *.sh dir/*.sh 这创建了每个文件的副本,如 script.sh script.sh.bak 我现在想从 .bak
在 Perl 中,我使用通用模式遍历文件: $^I=".bak"; while(<>) { s/pattern/replacement/g; print; } $^I 将在其中创建备份。但是,
我需要从我的生产数据库的 .bak 自动创建重复的数据库。我已经通过 GUI 进行了多次操作,但是当从命令行执行时,我对各种开关感到有些困惑,特别是文件名和确保正确复制所有权。 只是寻找实现这一点的
他们是否有可能使用 Microsoft SQL Server Management Studio 从 .bak 文件中恢复选定的表。通过使用查询浏览器,我可以在脚本选项卡中打开备份文件,从而选择所需的
我知道这是一个奇怪的问题,但是出于测试目的是否可以故意为损坏的 MS SQL Server 数据库制作 .bak 文件?我想让它损坏,这样我就可以尝试通过故障排除进行恢复,并提高我的数据库恢复故障排除
我换过电脑。因此我无法访问我的 MySQL 数据库。但是,我能够获取 my 2013-05-09 1145.ini.bak 文件。我能否从该文件中检索所有文件夹和数据。 我已经尝试用谷歌搜索这个,但没
我在 MySQL 中有一个数据库,我需要在 .bak 文件中备份它。我发现了很多关于将 .bak 转换为 .sql 的主题,但没有找到关于将 .sql 转换为 .bak 的主题。可行吗?如果是这样 -
我正在尝试在 visual studio 上运行一个经典的 asp 项目,因此我正在尝试恢复数据库。尝试恢复时,我似乎找不到 .bak 文件。它在 C 驱动器中不可见。我查了一下,发现它与权限有关。我
我正在尝试在 visual studio 上运行一个经典的 asp 项目,因此我正在尝试恢复数据库。尝试恢复时,我似乎找不到 .bak 文件。它在 C 驱动器中不可见。我查了一下,发现它与权限有关。我
我们有一个大型 SQL 数据库,我们在每晚备份中将其拆分为 4 个单独的 bak 文件,以便可以更轻松地将其发送到异地。我们使用这个语句(数据库名称已更改) BACKUP DATABASE [Data
我正在 MAC 上通过 Docker 运行本地主机数据库。我有一项作业要求我将 .bak 文件与我编写的程序一起提交。我使用 Azure Data Studio 作为 DBMS。我在任何地方都找不到这
我是一名优秀的程序员,十分优秀!