数据库的附加是数据库在数据库文件中添加到数据库当中的操作,下面这篇文章主要给大家介绍了关于SQL Server数据库分离和附加数据库的操作步骤,文中通过图文介绍的非常详细,需要的朋友可以参考下
1. 概述
若要将数据库移动或更改到同一计算机的不同 SQL Server 实例,分离和附加数据库会很有用;用户可以分离数据库的数据和事务日志文件,再将它们重新附加到同一或其他 SQL Server 实例中;
在 64 位和 32 为环境中,SQL Server 磁盘存储格式均相同,所以,能将 32 位环境中的数据库附加到 64 位环境中,反过来也行;
从运行在某个环境中的服务器实例上分离的数据库可以附加到运行在另一个环境的服务器实例;
注意: 不要从未知或不可信源附加或还原数据库;此类数据库可能包含执行非预期 T-SQL 代码的恶意代码,或通过修改架构或物理数据库结构导致错误;在使用未知源或不可信源中的数据库之前,在非生产服务器中对数据库运行 DBCC CHECKDB,同时检查数据库中的代码;
2. 分离数据库
分离数据库 指从 SQL Server 实例中删除,但使数据库在其数据文件和事物日志文件保持不变;之后,就能使用这些文件将数据库附加到任何 SQL Server 实例,包括分离该数据库的服务器;
若存在以下任何情况,就不能分离数据库;
- 已复制并发布的数据库;若进行复制,数据库就必须是未发布的,必须通过运行 sp_replicationdboption 禁用发布后,才能分离数据库;
- 数据库中存在数据库快照,必须先删除所有数据库快照,才能分离数据库;
- 该数据库正在某个数据库镜像会话中进行镜像,不终止该会话,就不能分离该数据库;
- 数据库处于可疑状态;
- 该数据库是系统数据库;
2.1 分离数据库的步骤
- 在 SSMS 对象资源管理器中连接到 SQL Server 数据库引擎的实例,展开该实例;
- 展开数据库,选择要分离的用户数据库名称;
- 右击数据库 → 任务 → 分离;
4.分离数据库对话框,确定;
3. 附加数据库
通过 SSMS ,用户同样能附加复制的或分离的 SQL Server 数据库;
注意: 附加数据库时,该数据库必须已分离且所有数据文件(MDF 文件或 NDF 文件)都必须可用;
附加日志文件的要求在某些方面取决于是读写还是只读的;
若读写数据库具有单个日志文件,且没有为该日志文件指定新位置,附加操作将在旧位置中查找该文件;
若找到了该就日志文件,无论数据库上次是否完全关闭,都会使用该文件;但是,若未找到旧文件日志,数据库上次是完全关闭且现在没有活动日志链,则附加操作将尝试为数据创建新的日志文件;
反之,若附加的主数据文件是只读的,则数据库引擎假定该数据库也是只读的;对于只读数据库,日志文件在数据库中指定的位置上必须可用;
从上述内容能看出,用户尝试附加 SQL Server 数据库前,必须具备一定的先决条件,如下所示:
- 必须先分离数据库,任何尝试附加未分离的数据库都将返回错误;
- 附加数据库时,所有数据文件(MDF 文件和 LDF 文件)都必须可用;若任何数据文件路径不同于首次创建数据库或上次附加数据库时的路径,则必须指定文件的当前路径;
- 在附加数据库时,若 MDF 和 LDF 文件位于不同目录且其中一条路径包含 \?\GlobalRoot,该操作将失败;
3.1 附加数据的操作步骤
附加数据库到指定目标上,操作步骤如下:
1.右击数据库 → 附加;
2.附加数据库对话框中,若要指定要附加的数据库,可单击添加,在定位数据库文件中选择数据库所在的磁盘驱动器并展开目录,以查找并选择数据的**.mdf** 数据库文件;
总结
到此这篇关于SQL Server数据库分离和附加数据库的文章就介绍到这了,更多相关SQLServer分离和附加数据库内容请搜索编程学习网以前的文章希望大家以后多多支持编程学习网!
本文标题为:SQL Server数据库分离和附加数据库的操作步骤
- Mongodb启动报错完美解决方案:about to fork child process,waiting until server is ready for connections. 2023-07-16
- MySQL8.0.28安装教程详细图解(windows 64位) 2023-07-26
- SQL Server 2022 AlwaysOn新特性之包含可用性组详解 2023-07-29
- redis清除数据 2023-09-13
- Oracle 删除大量表记录操作分析总结 2023-07-23
- SQLSERVER调用C#的代码实现 2023-07-29
- 在阿里云CentOS 6.8上安装Redis 2023-09-12
- Numpy中如何创建矩阵并等间隔抽取数据 2023-07-28
- 基于Python制作一个简单的文章搜索工具 2023-07-28
- 搭建单机Redis缓存服务的实现 2023-07-13