1. 准备工作与注意事项
在 SQL Server 2000 中重命名数据库前,需确认当前用户具有 sysadmin 权限,并停止所有应用程序连接。建议先使用企业管理器或 BACKUP DATABASE
命令进行完整备份。通过以下命令检查活动连接:
USE master
SELECT * FROM sysprocesses WHERE dbid = DB_ID('原数据库名')
若存在活动会话,需执行强制断开连接操作:
EXEC sp_dboption '原数据库名', 'Single User', 'TRUE'
2. 使用 T-SQL 命令重命名
通过查询分析器执行以下标准流程:
- 设置单用户模式:
EXEC sp_dboption '原数据库名', 'Single User', 'TRUE'
- 重命名核心命令:
EXEC sp_renamedb '原数据库名', '新数据库名'
- 恢复多用户模式:
EXEC sp_dboption '新数据库名', 'Single User', 'FALSE'
此方法仅修改数据库逻辑名称,不会改变物理文件名称。
3. 通过分离附加文件重命名
适用于需要修改物理文件名的场景:
- 在企业管理器中分离数据库(右键菜单→所有任务→分离数据库)
- 进入文件存储路径(默认:
C:\Program Files\Microsoft SQL Server\MSSQL\Data
)修改 MDF/LDF 文件名 - 附加数据库时手动修改「附加为」名称和文件路径
4. 修改物理文件与逻辑名称
若需同步修改逻辑文件标识,在重命名后执行:
ALTER DATABASE 新数据库名
MODIFY FILE (NAME='原逻辑名_Data', NEWNAME='新逻辑名_Data')
文件类型 | 命名规范 |
---|---|
数据文件 | 数据库名_Data.MDF |
日志文件 | 数据库名_Log.LDF |
注意事项:
- 重命名后需更新应用程序连接字符串
- 物理文件重命名必须通过分离附加操作完成
- 避免在事务处理期间执行重命名操作
两种方法均可实现数据库重命名:T-SQL 命令适合快速逻辑名称变更,而分离附加法则适用于需要修改物理文件名的场景。建议优先使用 sp_renamedb 存储过程,并通过逻辑文件修改命令完善操作。