从还原文件创建新数据库并更改主数据库文件位置
Create a new database from a restore file and change primary database file location
我有一个 SQL Server 2008 数据库 (A),我想将其复制到新服务器以用作以前状态的副本 (A_BKP)。
了解到
这在以后的版本中是可能的,但我也想将目标文件从 C: 驱动器移动到 D:
这在 SQL Server 2008 中可行吗?我需要哪些步骤来准备数据库备份文件以导入到 D: 驱动器。?
如果你想"move"你的数据库到另一个服务器首先你需要分离你的数据库。
指令是:
- 打开 SSMS
- 选择要移动的数据库。
- 右键单击 --> 任务 --> 分离
- 将显示“分离数据库”弹出窗口。
- 在分离数据库之前,您需要确保没有人连接到数据库。检查 "Message" 列。它会告诉你是否有连接。如果有连接但您仍想分离数据库,您可以单击 "Drop Connections" 复选框。
- 按确定
现在您可以将数据库文件(MDF、LDF、FDF)移动到另一个位置。
将您的数据库附加到新服务器:
- 使用 SSMS 连接到新服务器
- 右键单击数据库并单击附加
- 按右中角的添加按钮。
- 选择您移动的 MDF(主数据库文件)文件,然后按确定。
- 按确定。
如果要将数据库备份恢复到新服务器作为新数据库:
- 使用 SSMS 连接到新服务器
- 右键单击数据库并单击还原数据库
- 点击源下方右上角的设备并添加您的备份文件
- 如果您想更改您的数据库名称,您可以在目标 --> 数据库部分更新它。
- 转到左上角的“文件”选项卡
- 您可以在那里查看文件位置。如果你想简单地更改位置,你可以在 "Restore As" 列上更新它。
- 按确定。
或使用以下脚本:
USE [master]
RESTORE DATABASE [A]
FROM DISK = N'<yourbackuplocation\A_BKP.bak>'
WITH FILE = 1,
MOVE N'A_Main' TO N'<new location for MAIN database file\<file name>.mdf>',
MOVE N'A_Log' TO N'<new location for LOG database file\<file name>.ldf>',
NOUNLOAD,
STATS = 5
GO
如果要将新服务器的数据库备份恢复到现有数据库:
ALTER DATABASE [A] SET SINGLE_USER WITH ROLLBACK IMMEDIATE
RESTORE DATABASE [A]
FROM DISK = '<yourbackuplocation\A_BKP.bak>' WITH FILE = 1,
MOVE N'A_Main' TO N'<new location for MAIN database file\<file name>.mdf>',
MOVE N'A_Log' TO N'<new location for LOG database file\<file name>.ldf>',
NOUNLOAD,
STATS = 5
ALTER DATABASE [A] SET MULTI_USER
我有一个 SQL Server 2008 数据库 (A),我想将其复制到新服务器以用作以前状态的副本 (A_BKP)。
了解到这在以后的版本中是可能的,但我也想将目标文件从 C: 驱动器移动到 D:
这在 SQL Server 2008 中可行吗?我需要哪些步骤来准备数据库备份文件以导入到 D: 驱动器。?
如果你想"move"你的数据库到另一个服务器首先你需要分离你的数据库。 指令是:
- 打开 SSMS
- 选择要移动的数据库。
- 右键单击 --> 任务 --> 分离
- 将显示“分离数据库”弹出窗口。
- 在分离数据库之前,您需要确保没有人连接到数据库。检查 "Message" 列。它会告诉你是否有连接。如果有连接但您仍想分离数据库,您可以单击 "Drop Connections" 复选框。
- 按确定
现在您可以将数据库文件(MDF、LDF、FDF)移动到另一个位置。
将您的数据库附加到新服务器:
- 使用 SSMS 连接到新服务器
- 右键单击数据库并单击附加
- 按右中角的添加按钮。
- 选择您移动的 MDF(主数据库文件)文件,然后按确定。
- 按确定。
如果要将数据库备份恢复到新服务器作为新数据库:
- 使用 SSMS 连接到新服务器
- 右键单击数据库并单击还原数据库
- 点击源下方右上角的设备并添加您的备份文件
- 如果您想更改您的数据库名称,您可以在目标 --> 数据库部分更新它。
- 转到左上角的“文件”选项卡
- 您可以在那里查看文件位置。如果你想简单地更改位置,你可以在 "Restore As" 列上更新它。
- 按确定。
或使用以下脚本:
USE [master]
RESTORE DATABASE [A]
FROM DISK = N'<yourbackuplocation\A_BKP.bak>'
WITH FILE = 1,
MOVE N'A_Main' TO N'<new location for MAIN database file\<file name>.mdf>',
MOVE N'A_Log' TO N'<new location for LOG database file\<file name>.ldf>',
NOUNLOAD,
STATS = 5
GO
如果要将新服务器的数据库备份恢复到现有数据库:
ALTER DATABASE [A] SET SINGLE_USER WITH ROLLBACK IMMEDIATE
RESTORE DATABASE [A]
FROM DISK = '<yourbackuplocation\A_BKP.bak>' WITH FILE = 1,
MOVE N'A_Main' TO N'<new location for MAIN database file\<file name>.mdf>',
MOVE N'A_Log' TO N'<new location for LOG database file\<file name>.ldf>',
NOUNLOAD,
STATS = 5
ALTER DATABASE [A] SET MULTI_USER