金蝶数据库恢复出错处理.doc
文本预览下载声明
如何修改SQL Server 2000的数据库逻辑与物理名称 收藏
在项目中使用SQL Server 2000创建了一个数据库,发现名称与另一个数据库太相似,于是决定更改名称,包括:
在企业管理器中看到的数据库名,也是实际应用程序中连接用的数据库名称;
在磁盘上看的物理名称。
根据国内外找到的技术资料,给出完整的SQL脚本代码如下(原库名为abc、修改为abc2):
use master
go
--1) 创建数据库(原始数据库abc)
create database abc on(name=abc, filename=d:\abc_data.mdf)
go
--2) 重命名数据库(新数据库名abc2)
exec sp_renamedb abc, abc2
go
--3) 修改数据库的逻辑名称
alter database abc2 modify file(name=abc_data, newname=abc2_data)
alter database abc2 modify file(name=abc_log, newname=abc2_log)
--go
--4) 分离数据库
exec sp_detach_db abc2
go
--5) 重命名数据库物理文件
exec xp_cmdshell rename d:\abc_data.mdf abc2_data.mdf
exec xp_cmdshell rename d:\abc_log.ldf abc2_log.ldf
go
--6) 附加数据库
exec sp_attach_db abc2, d:\abc2_data.mdf, d:\abc2_log.ldf
go
上述代码中,需要注意如下几点:
完整的6个步骤中,可以不用脚本的步骤为:第1)、4)步可以在企业管理器中实现,第5)步可以在Windows资源管理器中修改。
如果省略第3)步,整个脚本仍然可以运行,但在企业管理器中查看数据库的“属性”时(右键点击该库,弹出菜单中),其“数据文件”、“事物日志”名仍然为库创建时的原名称。
如果第6)部不使用存储过程,而是在企业管理器中直接“附加”(数据库的“任务”菜单中的“附加”功能),因“原文件名”与当前名不一致,不允许附加操作(“确定”按钮为灰色的)。
本文来自CSDN博客,转载请标明出处:/hulihui/archive/2010/02/07/5296201.aspx
sql server 2000更改数据库名称 、更改逻辑文件名
--------------------------------------------------------------------------------
来源:
一. 更改数据库物理文件名
在企业管理器中不能直接更改,在查询分析器中运行(数据库名称):
alter database 原数据库名称
modify name=新数据库名称
或:
数据库还原时更改物理文件名,
或:
分离数据库,直接更改 mdf 的文件名再附加
二. 更改逻辑文件名
在查询分析器中运行(数据库名称):
alter database 数据库名称
modify file(name=原逻辑文件名, newname=新逻辑文件名)
由于 SQL Server 有数据文件和日志文件,如果都要改的话,就得写两个类似于上述的语句
restore database test(为数据库名称)
from disk=F:\test.bak --F:\test.bak 是备份文件名
with move test_data to F:\Program Files\Microsoft SQL Server\MSSQL\Data\test_data.mdf --将test_data恢复到指定目录
,move test_log to F:\Program Files\Microsoft SQL Server\MSSQL\Data\test_log.ldf --将test_log恢复到指定目录
alter database Ais20091009144825 modify file(name=scm102SP2_data825_data, newname=Ais20091009144825_data)
go
alter database Ais2009100914482
显示全部