澳门新萄京官方网站-www.8455.com-澳门新萄京赌场网址

澳门新萄京官方网站:7数据库的复原措施,sql语

2019-10-05 作者:数据库网络   |   浏览(120)

当使用 sp_attach_db 系统存储过程附加数据库时- - 
Tag: 当使用 sp_attach_db 系统存储过程附加数据库时 
//附加数据库 
sp_attach_db 
当使用 sp_attach_db 系统存储过程附加数据库时。 

当使用 sp_attach_db 系统存储过程附加数据库时- -
Tag: 当使用 sp_attach_db 系统存储过程附加数据库时
//附加数据库
sp_attach_db
当使用 sp_attach_db 系统存储过程附加数据库时。

拷贝的SQL Server 7数据库的恢复方法
在SQL Server 7中由于MS重新设计了数据库文件的存储方式,取消了新建设备再建数据库这一繁琐的过程。新的存储格式,一个数据库包括两个文件,mdf数据库文件和ldf日志文件。所以我们在重装机器备份时可以把你要备份的数据库的这两个文件拷贝出来,重新安装之后再恢复。
  在SQL Server中提供了这种恢复方式的存储过程。
1.sp_attach_db [@dbname =] 'dbname',[@filename1 =] 'filename_n'
给系统添加一个数据库,在dbname指定数据库名称,filename_n指定数据库的文件和日志文件。比如我有一个voogiya的库,停止SQL Server服务备份voogiya_data.mdf,voogiya_log.ldf,启动SQL server,删除掉这个库,然后再把这两上文件拷到sql server DATA目录中,在Query Analyzer中执行如下语句:
EXEC sp_attach_db @dbname = N'voogiya',
@filename1 = N'd:mssql7datavoogiya_data.mdf',
@filename2 = N'd:mssql7datavoogiya_log.ldf'
就会把这个库加入到SQL Server Group中.
2.sp_attach_single_file_db [@dbname =] 'dbname',
[@physname =] 'physical_name'
这个命令和上面的功能一样,在physical_name中只要写上据库的物理文件名就可以了,日志文件SQL server会重新建立。这个存储过程的运行要先执行下面的存储过程:
sp_detach_db @dbname = 'dbname'
同样以上面的为例:
EXEC sp_detach_db @dbname = 'voogiya'
EXEC sp_attach_single_file_db @dbname = 'voogiya',
@physname = 'd:mssql7datavoogiya_data.mdf'

在SQL Server中提供了这种恢复方式的存储过程。
一个数据库包括两个文件,mdf数据库文件和ldf日志文件
1.sp_attach_db [@dbname =] 'dbname',[@filename1 =] 'filename_n'
给系统添加一个数据库,在dbname指定数据库名称,filename_n指定数据库的文件和日志文件。比如我有一个ji的库,停止SQL Server服务备份ji_data.mdf,ji_log.ldf,启动SQL server,删除掉这个库,然后再把这两上文件拷到sql server DATA目录中,在Query Analyzer中执行如下语句:
EXEC sp_attach_db @dbname = N'ji',
@filename1 = N'd:mssql7dataji_data.mdf',
@filename2 = N'd:mssql7dataji_log.ldf'
就会把这个库加入到SQL Server Group中.

sp_attach_db:将数据库附加到服务器。 
语法 
sp_attach_db [ @dbname = ] 'dbname' , [ @filename1 = ] 'filename_n' [ ,...16 ] 

sp_attach_db:将数据库附加到服务器。
语法
sp_attach_db [ @dbname = ] 'dbname' , [ @filename1 = ] 'filename_n' [ ,...16 ]

要注意执行以上存储过程的用户要在sysadmin中.
以上方法在windows Nt 4.0,service pack5,sql server 7.0上运行通过。

参数 
[@dbname =] 'dbname' 
要附加到服务器的数据库的名称。该名称必须是唯一的。dbname 的数据类型为 sysname,默认值为 NULL。 

参数
[@dbname =] 'dbname'
要附加到服务器的数据库的名称。该名称必须是唯一的。dbname 的数据类型为 sysname,默认值为 NULL。

[@filename1 =] 'filename_n' 

[@filename1 =] 'filename_n'

数据库文件的物理名称,包括路径。filename_n 的数据类型为 nvarchar(260),默认值为 NULL。最多可以指定 16 个文件名。 
参数名称以 @filename1 开始,递增到 @filename16。文件名列表至少必须包括主文件,主文件包含指向数据库中其它文件的系统表。 
该列表还必须包括数据库分离后所有被移动的文件。 

数据库文件的物理名称,包括路径。filename_n 的数据类型为 nvarchar(260),默认值为 NULL。最多可以指定 16 个文件名。
参数名称以 @filename1 开始,递增到 @filename16。文件名列表至少必须包括主文件,主文件包含指向数据库中其它文件的系统表。
该列表还必须包括数据库分离后所有被移动的文件。

返回代码值:0(成功)或 1(失败) 

返回代码值:0(成功)或 1(失败)

eg:下面的示例将 pubs 中的两个文件附加到当前服务器。 

eg:下面的示例将 pubs 中的两个文件附加到当前服务器。

EXEC sp_attach_db @dbname = N'pubs', 
@filename1 = N'c:Program FilesMicrosoft SQL ServerMSSQLDatapubs.mdf', 
@filename2 = N'c:Program FilesMicrosoft SQL Server澳门新萄京官方网站:7数据库的复原措施,sql语句附加。MSSQLDatapubs_log.ldf' 

EXEC sp_attach_db @dbname = N'pubs',
@filename1 = N'c:Program FilesMicrosoft SQL ServerMSSQLDatapubs.mdf',
@filename2 = N'c:Program FilesMicrosoft SQL ServerMSSQLDatapubs_log.ldf'

EXEC sp_attach_db @dbname = N'Ty20051029101451aaa', 
@filename1 = N'd:5屏幕Ty20051029101451aaa_data.mdf', 
@filename2 = N'd:5屏幕Ty20051029101451aaa_log.ldf' 
---解决问题了 

EXEC sp_attach_db @dbname = N'Ty20051029101451aaa',
@filename1 = N'd:5屏幕Ty20051029101451aaa_data.mdf',
@filename2 = N'd:5屏幕Ty20051029101451aaa_log.ldf'
---解决问题了

//删除数据库 
DROP DATABASE 
从Microsoft? SQL Server? 删除一个或多个数据库。删除数据库将删除数据库所使用的数据库文件和磁盘文件。 

澳门新萄京官方网站,//删除数据库
DROP DATABASE
从Microsoft? SQL Server? 删除一个或多个数据库。删除数据库将删除数据库所使用的数据库文件和磁盘文件。

语法 :DROP DATABASE database_name [ ,...n ] 

语法 :DROP DATABASE database_name [ ,...n ]

参数 :database_name 指定要删除的数据库名称。从 master 数据库中执行 sp_helpdb 以查看数据库列表。 
eg: exec sp_helpdb database_name 

参数 :database_name 指定要删除的数据库名称。从 master 数据库中执行 sp_helpdb 以查看数据库列表。
eg: exec sp_helpdb database_name

exec Drpo DataBase [Ty20051029101451aaa] 

exec Drpo DataBase [Ty20051029101451aaa]

//分离数据库 
可以使用 sp_detach_db 存储过程分离该数据库,然后使用带有 FOR ATTACH 子句的 CREATE DATABASE 重新附加。 
sp_detach_db Archive 
GO 
CREATE DATABASE Archive 
ON PRIMARY (FILENAME = 'c:program filesmicrosoft sqlservermssqldataarchdat1.mdf') 
FOR ATTACH 
GO 

//分离数据库
可以使用 sp_detach_db 存储过程分离该数据库,然后使用带有 FOR ATTACH 子句的 CREATE DATABASE 重新附加。
sp_detach_db Archive
GO
CREATE DATABASE Archive
ON PRIMARY (FILENAME = 'c:program filesmicrosoft sqlservermssqldataarchdat1.mdf')
FOR ATTACH
GO

关注流行国外网站

//显示当前数据库信息
--select * from Master..sysDatabases

facebook:http://www.fb-on.com

//新建---不行啊
CREATE DATABASE TestOA
ALTER DATABASE TestOA SET OFFLINE WITH ROLLBACK IMMEDIATE
RESTORE DATABASE TestOA From disk='C:Documents and SettingsAdministrator桌面帐套dataTemplate.Dat'
ALTER DATABASE TestOA SET OFFLINE WITH ROLLBACK IMMEDIATE

facebook官网:http://www.facebookzh.com

exec sp_detach_db Km20051030011601 --分离数据库
exec sp_attach_single_file_db km20051030011601,'D:TestDatabaseKm20051030011601.mdf'--只附加.mdf文件

facebook:http://www.cn-face-book.com

关注流行国外网站
facebook:
facebook官网:
facebook:
youtube:
twitter:

youtube:http://www.youtubezh.com

twitter:http://www.twitterzh.com

//显示当前数据库信息 
--select * from Master..sysDatabases 

//新建---不行啊 
CREATE DATABASE TestOA 
ALTER DATABASE TestOA SET OFFLINE WITH ROLLBACK IMMEDIATE 
RESTORE DATABASE TestOA From disk='C:Documents and SettingsAdministrator桌面帐套dataTemplate.Dat' 
ALTER DATABASE TestOA SET OFFLINE WITH ROLLBACK IMMEDIATE 

exec sp_detach_db Km20051030011601 --分离数据库 
exec sp_attach_single_file_db km20051030011601,'D:TestDatabaseKm20051030011601.mdf'--只附加.mdf文件

本文由澳门新萄京官方网站发布于数据库网络,转载请注明出处:澳门新萄京官方网站:7数据库的复原措施,sql语

关键词: