我的数据库以BAK文件的格式备份到硬盘。我正在尝试恢复该备份,但我无法这样做。
以下是我的疑问:
ALTER DATABASE DBASE
SET SINGLE_USER WITH
ROLLBACK IMMEDIATE
RESTORE DATABASE DBASE
FROM DISK = 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.DBASE\MSSQL\Restore\DBASE.BAK'
WITH
MOVE 'DBASE' TO 'C:\Program Files\Microsoft SQL
我正在尝试使用Backup-Restore在SQL Management Studio (SQL Server Express)中创建数据库的副本。本地到本地。当我这样做时,它复制表格和数据,但忽略视图、存储过程和外键。
对象资源管理器->写单击"Databases“-> "Restore Database...”-> put in a name -> select a "from“数据库-> go
下面是生成的脚本:
RESTORE DATABASE [DbName_raw]
FROM DISK = N'C:\Program
我有一个数据库,恢复模式设置为FULL。这是一个开发数据库,我有两个完整的备份日期分别为19和27,也就是最新的备份。
其中一位开发人员在26日做了一些更改,我想回滚这些更改,并希望在25的状态下恢复数据库。
restore database MyDb from disk = 'I:\MSSQL\DATA\MyDb_20160127.bak'
with recovery, stopat = '2016-01-25 10:38:15.280',
move 'MyDb' to 'I:\MSSQL\DATA\MyDb.mdf',
mo
我有一个名叫学生的数据库。为此,我可以使用工具备份创建数据库。但我无法使用查询创建。
use students
go
backup database students to disk = 'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Backup' with format, medianame = 'test',name = 'back up of the student database'
go
在执行此操作时,我将得到以下错误。有人能在这个问题上帮
我正在为一次安装的维护计划中创建一个备份作业而挣扎。
为特定数据库设置“备份数据库任务”,选择"Disk“选项,以及”为每个数据库创建备份文件“和”为每个数据库创建一个子目录“。文件夹设置为可浏览的UNC路径:
\\\backupserver\SQLBack\servername
视图the显示相同的正确备份位置:
BACKUP DATABASE [DBName]
TO DISK = N' \\\backupserver\SQLBack\servername\DBName\DBName_backup_2018_04_27_141724_2876433.bak'
WI
我需要通过脚本复制Server 2008中的数据库。我找到了这个解决方案:
BACKUP DATABASE Database1 TO DISK='C:\temp\Database1.bak';
RESTORE DATABASE Database2 FROM DISK='C:\temp\Database1.bak'
WITH MOVE 'Database1' TO 'C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\Database2.mdf'
你好,我有数据库上的用户工作。我想创建此数据库的副本用于测试目的。
谁能告诉我这是怎么做到的?我试过上的所有东西
但是复制文件并附加它会破坏第一个数据库,并尝试将备份恢复到新的数据库中,这会抛出错误,即数据库不同。
有人能给我提个解决方案吗?
正如@Nadeem_MK建议的那样,我创建了备份,现在我正在尝试使用以下脚本进行恢复:
RESTORE DATABASE [Equipment Test] -- use your new db name
FROM DISK = N'C:\Backup\ExistingDb.bak' --Path of backup location
我得到了一个42 MB的.bak文件,恢复后,数据库大小约为2048.00 MB。当我对这个DB进行备份时,.bak文件大小为277 MB。
为什么.bak文件大小增加?我会在恢复后立即进行测试。
请查找还原脚本:
IF OBJECT_ID(N'tempdb..#tmp') IS NOT NULL
BEGIN
DROP TABLE #tmp
END
go
declare @path varchar(50)
create table #tmp
(
LogicalName nvarchar(128)
,PhysicalName nvarchar(260)
,Type
我备份了一个数据库:
BACKUP DATABASE MyDatabase
TO DISK = 'MyDatabase.bak'
WITH INIT --overwrite existing
然后试图恢复它:
RESTORE DATABASE MyDatabase
FROM DISK = 'MyDatabase.bak'
WITH REPLACE --force restore over specified database
现在,数据库仍处于恢复状态。
有人认为,这是因为备份中没有日志文件,需要使用以下命令进行滚动:
RESTORE D
以下是我所执行的步骤:
我对旧的数据库备份运行了一个“还原备份”查询。
然后,使用还原备份。我更改了某些列的类型,然后再次备份数据库。
最后,我再次将其恢复。
如果我尝试使用的最后一步,这将按预期的方式工作--已更改列的数据库将被还原。但是,如果我尝试使用“还原备份”查询,它会恢复数据库的错误版本,而不会更改列类型。这很可能是旧版本,但我确信我使用的路径引用了最新的备份。
我运行的查询如下:
RESTORE DATABASE {db_name} FROM DISK = '{path to .bak file}' WITH REPLACE,
MOVE '{db_name}