一般备注
无论数据库处于下列哪种状态,都可将其删除:脱机状态、只读状态或可疑状态等。 若要显示数据库的
当前状态,请使用 sys.databases 目录视图。
只有通过还原备份才能重新创建已删除的数据库。 数据库快照无法备份,因此也就无法还原。
删除数据库时,应备份 master 数据库 。
执行数据库删除操作会从 SQL Server 实例中删除数据库,并删除该数据库使用的物理磁盘文件。 执行
删除操作时,如果数据库或它的任意一个文件处于脱机状态,则不会删除磁盘文件。 可使用 Windows
资源管理器手动删除这些文件。 若要从当前服务器删除数据库,但不从文件系统删除文件,请使用
sp_detach_db 。
警告
删除具有与其关联的 FILE_SNAPSHOT 备份的数据库将成功,但不会删除具有关联快照的数据库文件,
以免使引用这些数据库文件的备份失效。 将截断该文件,但不会以物理方式将其删除,以保持
FILE_SNAPSHOT 备份不受影响。 有关详细信息,请参阅 使用 Microsoft Azure Blob 存储执行 SQL
Server 备份和还原 。 适用于:SQL Server 2016 (13.x) 到 当前版本 。
SQL Server
执行数据库快照删除操作会从 SQL Server 实例中删除数据库快照,并删除该快照使用的物理 NTFS 文
件系统稀疏文件。 有关数据库快照如何使用稀疏文件的信息,请参阅 数据库快照 。 删除数据库快照将
清除 SQL Server 实例的计划缓存。 清除计划缓存将导致对所有后续执行计划进行重新编译,并可能导
致查询性能暂时性地突然降低。 对于计划缓存中每个已清除的缓存存储区,SQL Server 错误日志包含
以下信息性消息:“由于某些数据库维护或重新配置操作,SQL Server 经历了 '%s' 缓存存储区(计划缓
存的一部分)的 %d 次刷新”。 每隔五分钟,只要缓存在这段时间间隔内得到刷新,此消息就记录一
次。
互操作性
SQL Server
若要删除针对事务复制发布的数据库,或者删除针对合并复制发布或订阅的数据库,必须首先从数据库
中删除复制。 如果数据库损坏或无法首先删除复制,或这两种情况同时存在,那么在多数情况下仍然可
以删除数据库,方法是使用 ALTER DATABASE 将数据库设置为脱机,然后将其删除。
如果数据库涉及日志传送操作,请在删除数据库之前取消日志传送操作。 有关详细信息,请参阅 关于
日志传送 。
限制和局限
无法删除 系统数据库 。
评论