
标签:Sqlserver
语法:Restore an entire database:
RESTORE DATABASE { database_name | @database_name_var }
[ FROM < backup_device > [ ,...n ] ]
[ WITH
[ RESTRICTED_USER ]
[ [ , ] FILE = { file_number | @file_number } ]
[ [ , ] PASSWORD = { password | @password_variable } ]
[ [ , ] MEDIANAME = { media_name | @media_name_variable } ]
[ [ , ] MEDIAPASSWORD = { mediapassword | @mediapassword_variable }]

[ [ , ] MOVE 'logical_file_name' TO 'operating_system_file_name']
[ ,...n ]
[ [ , ] KEEP_REPLICATION ]
[ [ , ] { NORECOVERY | RECOVERY | STANDBY = undo_file_name }]
[ [ , ] { NOREWIND | REWIND } ]
[ [ , ] { NOUNLOAD | UNLOAD } ]
[ [ , ] REPLACE ]
[ [ , ] RESTART ]
[ [ , ] STATS [ = percentage ] ]
]

1.首先看一段代码
BACKUP DATABASE Northwind TO DISK = 'C:\Program Files\Microsoft SQLServer\MSSQL\BACKUP\Northwind.BAK'
RESTORE FILELIST
ONLY FROM DISK = 'C:\Program Files\Microsoft SQLServer\MSSQL\BACKUP\Northwind.BAK'
RESTORE DATABASE TestDB FROM DISK = 'C:\Program Files\Microsoft SQLServer\MSSQL\BACKUP\Northwind.BAK' WITH MOVE 'Northwind' TO'c:\test\testdb.mdf', MOVE 'Northwind_log' TO'c:\test\testdb.ldf'
第一句将Northwind备份到C:\Northwind.bak文件
第二句从BAK文件获取Northwind的一些原始信息,包括LogicalName, PhyscialName, Type,FileGroupName, Size, MaxSize
其中最重要的是LogicalName和PhyscialName,它们分别代表了的逻辑名以及对应的物理文件名,注意:当还原时,你可以改变的名称以及它的物理文件名称,但是你不可以改变它的逻辑名称,所以,当我们将一个还原成为另外一个时,我们首先要利用RESTOREFILELISTONLY命令得到它的原始逻辑名称
第三句
将Northwind还原成一个名为TestDB的,并将它的物理文件保存在''c:\test\'下,这里需要注意的是逻辑名称必须是原始逻辑名称
SqlServer在创建时会建立两个文件,一个是数据文件mdf,另外一个是日志文件ldf,而在备份时,会产生一个bak文件.
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/shouji/article-51607-1.html
搞好国家建设绝对能在国际上发挥更大的作用