sqlserver2017 分离附加数据库

分离数据库

分离数据库是指将数据库从 SQL Server 实例中移除,但会完整保留数据库及其数据文件和事务日志文件。 然后可以使用这些文件将数据库附加到任何 SQL Server 实例,包括分离该数据库的服务器。

如果存在下列任何情况,则不能分离数据库:

已复制并发布数据库。 如果进行复制,则数据库必须是未发布的。 必须通过运行 sp_replicationdboption禁用发布后,才能分离数据库。

备注

如果无法使用 sp_replicationdboption,可以通过运行 sp_removedbreplication 删除复制。
数据库中存在数据库快照。

必须首先删除所有数据库快照,然后才能分离数据库。

备注

不能分离或附加数据库快照。
数据库是 Always On 可用性组的一部分。
在将数据库从可用性组中删除之前,无法分离该数据库。 有关详细信息,请参阅从 Always On 可用性组中删除主数据库。
该数据库正在某个数据库镜像会话中进行镜像。
除非终止该会话,否则无法分离该数据库。 有关详细信息,请参阅删除数据库镜像 (SQL Server)。
数据库处于可疑状态。 无法分离可疑数据库;必须将数据库设为紧急模式,才能对其进行分离。 有关如何将数据库置于紧急模式下的详细信息,请参阅 ALTER DATABASE (Transact-SQL)。
数据库为系统数据库。

附加数据库

可以附加复制的或分离的 SQL Server 数据库。

附加数据库时,所有数据文件(.mdf 和 .ndf 文件)都必须可用。 如果任何数据文件的路径不同于首次创建数据库或上次附加数据库时的路径,则必须指定文件的当前路径。

将数据库附加到其他服务器实例

无法在早期版本的 SQL Server 中附加由较新版本的 SQL Server 创建的数据库。 这将阻止数据库被旧版本的数据库引擎物理使用。 但是,这与元数据状态相关且不会影响数据库兼容性级别。

将数据库附加到其他服务器实例时,为了给用户和应用程序提供一致的体验,您最好在其他服务器实例上为数据库重新创建部分或全部元数据。 此元数据包括登录名和作业。 有关元数据的详细信息,

相关推荐
小费的部落6 分钟前
记 etcd 无法在docker-compose.yml启动后无法映射数据库目录的问题
数据库·docker·etcd
woshilys2 小时前
mysql 删除表等待
数据库·mysql
SEO-狼术3 小时前
dbForge Documenter for Oracle Crack
数据库·oracle
极限实验室3 小时前
如何使用 Grafana 连接 Easyearch
数据库
文or野3 小时前
MySQL 在 CentOS 7 环境安装完整步骤
数据库·mysql·adb
牧羊狼的狼4 小时前
主键索引和唯一索引的区别
数据库·sql·oracle
Justice link4 小时前
部署redis cluster
数据库·redis·缓存
会飞的土拨鼠呀4 小时前
SQL Server AlwaysOn (SQL 查询数据详解及监控用途)
数据库
蜕变的土豆5 小时前
ubuntu22.04下安装mysql以及mysql-workbench
数据库·mysql
notfindjob6 小时前
QT Sqlite数据库-教程001 创建数据库和表-下
数据库·qt·sqlite