当前位置:  数据库>sqlserver

SQL Server 数据库分离与附加(图文教程)

    来源: 互联网  发布时间:2014-10-11

    本文导语:  一、概述 SQL Server提供了“分离/附加”数据库、“备份/还原”数据库、复制数据库等多种数据库的备份和恢复方法。这里介绍一种学习中常用的“分离/附加”方法,类似于大家熟悉的“文件拷贝”方法,即把数据库文件(.MDF...

一、概述

SQL Server提供了“分离/附加”数据库、“备份/还原”数据库、复制数据库等多种数据库的备份和恢复方法。这里介绍一种学习中常用的“分离/附加”方法,类似于大家熟悉的“文件拷贝”方法,即把数据库文件(.MDF)和对应的日志文件(.LDF)拷贝到其它磁盘上作备份,然后把这两个文件再拷贝到任何需要这个数据库的系统之中。比如,在实验教学过程中,同学们常常想把自己在学校实验室计算机中创建的数据库搬迁到自己的计算机中而不想重新创建该数据库,就可以使用这种简单的方法。但由于数据库管理系统的特殊性,需要利用SQL Server提供的工具才能完成以上工作,而直接的文件拷贝是行不通的。

这个方法涉及到SQL Server分离数据库和附加数据库这两个互逆操作工具。

1、分离数据库就是将某个数据库(如student_Mis)从SQL Server数据库列表中删除,使其不再被SQL Server管理和使用,但该数据库的文件(.MDF)和对应的日志文件(.LDF)完好无损。分离成功后,我们就可以把该数据库文件(.MDF)和对应的日志文件(.LDF)拷贝到其它磁盘中作为备份保存。

2、附加数据库就是将一个备份磁盘中的数据库文件(.MDF)和对应的日志文件(.LDF)拷贝到需要的计算机,并将其添加到某个SQL Server数据库服务器中,由该服务器来管理和使用这个数据库。

二、分离数据库

1. 在启动SSMS并连接到数据库服务器后,在对象资源管理器中展开服务器节点。在数据库对象下找到需要分离的数据库名称,这里以student_Mis数据库为例。右键单击student_Mis数据库,在弹出的快捷菜单中选择属性。

2. 在“数据库属性”窗口左边“选择页”下面区域中选定“选项”对象,然后右边区域的“其它选项”列表中找到“状态”项,单击“限制访问”文本框,在其下拉列表中选择“SINGLE_USER”。

3. 在上图中单击“确定”按钮后将出现一个消息框,通知我们此操作将关闭所有与这个数据库的连接,是否继续这个操作(如下图)。注意:在大型数据库系统中,随意断开数据库的其它连接是一个危险的动作,因为我们无法知道连接到数据库上的应用程序正在做什么,也许被断开的是一个正在对数据复杂更新操作、且已经运行较长时间的事务。

4. 单击“是”按钮后,数据库名称后面增加显示“单个用户”(如下图)。右键单击该数据库名称,在快捷菜单中选择“任务”的二级菜单项“分离”。出现下图所示的“分离数据库”窗口。

5. 在下图的分离数据库窗口中列出了我们要分离的数据库名称。请选中“更新统计信息”复选框。若“消息”列中没有显示存在活动连接,则“状态”列显示为“就绪”;否则显示“未就绪”,此时必须勾选“删除连接”列的复选框。

6. 分离数据库参数设置完成后,单击底部的”确定”按钮,就完成了所选数据库的分离操作。这时在对象资源管理器的数据库对象列表中就见不到刚才被分离的数据库名称student_Mis了(如下图)。

三、附加数据库

1. 将需要附加的数据库文件和日志文件拷贝到某个已经创建好的文件夹中。出于教学目的,我们将该文件拷贝到安装SQL Server时所生成的目录DATA文件夹中。

2. 在下图窗口中,右击数据库对象,并在快捷菜单中选择“附加”命令,打开“附加数据库”窗口。

3. 在“附加数据库”窗口中,单击页面中间的“添加”按钮,打开定位数据库文件的窗口,在此窗口中定位刚才拷贝到SQL Server的DATA文件夹中的数据库文件目录(数据文件不一定要放在“DATA”目录中),选择要附加的数据库文件(后缀.MDF,如下图)。

4. 单击“确定”按钮就完成了附加数据库文件的设置工作。这时,在附加数据库窗口中列出了需要附加数据库的信息(如下图)。如果需要修改附加后的数据库名称,则修改“附加为”文本框中的数据库名称。我们这里均采用默认值,因此,单击确定按钮,完成数据库的附加任务。

完成以上操作,我们在SSMS的对象资源管理器中就可以看到刚刚附加的数据库student_Mis (如下图)。

以上操作可以看出,如果要将某个数据库迁移到同一台计算机的不同SQL Server实例中或其它计算机的SQL Server系统中,分离和附加数据库的方法是很有用的。


    
 
 

您可能感兴趣的文章:

  • SQL Server 2008如何进行数据库分离和附加详细介绍
  • sql server2012附加数据库问题解决方法
  • SQL Server 2008无日志文件如何使用MDF文件附加数据库
  • sql server 2008 无法附加数据库的解决方法
  • mssql server .ldf和.mdf的文件附加数据库的sql语句
  • sql server 2005 附加数据库出错(错误号:5123)的解决方法
  • 用sql语句实现分离和附加数据库的方法
  • sql server 2005数据附加失败报错3456的解决办法
  • 使用sql语句分离和附加数据库的方法
  • sql server 2008分离与附加数据库的例子
  • sql server附加数据库后出现只读或失败的解决方法
  • 附加到SQL2012的数据库就不能再附加到低于SQL2012的数据库版本的解决方法
  • access与sql server几个常用函数的区别(图文)
  • SQL语句执行顺序图文介绍
  • 使SQL用户只能看到自己拥有权限的库(图文教程)
  • sql自连接查询的例子(图文)
  • sql server 2000数据库备份还原的图文教程
  • sql count查询举例(图文)
  • 如何远程连接SQL Server数据库图文教程
  • sql多条件多字段排序(图文教程)
  • sql 递归查询的代码(图文)
  • SQL Server 2000 清理日志精品图文教程
  • 如何远程连接SQL Server数据库的图文教程
  • sql 数据库还原图文教程
  • [图文]三分钟学会Sql Server的复制功能
  • IP连接SQL SERVER失败(配置为字符串失败)图文解决方法
  • sql编程工具Sql Prompt下载及安装破解图文教程
  • T-SQL语句创建数据库的例子(图文)
  • sql case when实现日期校验的代码(图文)
  • sql server无法对表中重复数据更新或删除的解决方法(图文)
  • SQL Server 2008图文安装教程第1/2页
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • SQL Server数据库的修复SQL语句
  • 如何实现连接一次数据库,提交多个sql语句。(sql的批处理)
  • 查询SQL Server中所有数据库的数据文件位置的sql脚本
  • 取数据库前几条数据(sql server、oracle、mysql)的sql写法
  • WEB前端 iis7站长之家
  • SQLServer中用T—SQL命令查询一个数据库中有哪些表的sql语句
  • 请问Linux数据库编程是否也可以支持通用的SQL语言进行数据库编写.
  • sql数据库多用户模式修改方法
  • sql数据库如何查询修改数据库恢复模式?
  • 数据库前端 SQL Workbench-J
  • 在Java中以MS SQL2000为后端数据库?
  • Oracle 数据库开发工具 Oracle SQL Developer
  • Java 数据库工具类库 sql2o
  • PHP SQL数据库开发框架 Medoo
  • sql语句获取数据库服务器上所有数据库的名字
  • Linux下能装SQL server 2000数据库吗?
  • linux中把a.sql文件还原数据库a,在线等
  • 谁用过sql server 2000?做jsp的数据库服务器?
  • sql server 2005删除用户时“数据库主体在该数据库中拥有架构,无法删除”错误的解决办法
  • sql 语句 取数据库服务器上所有数据库的名字
  • java命名空间java.sql接口statement的类成员方法: executeupdate定义及介绍
  • 请问,这是什么错误!java.sql.SQLException: [Microsoft][ODBC SQL Server Driver][Named Pipes]??????? SQL Server?虽然分少,但一定给,只要您是前5名回复者中最好的以为!
  • java命名空间java.sql接口connection的类成员方法: nativesql定义及介绍
  • SQL查询分析工具 SQL Workbench/J
  • java命名空间java.sql接口preparedstatement的类成员方法: executeupdate定义及介绍
  • oracle导出sql语句的结果集和保存执行的sql语句(深入分析)
  • java命名空间java.sql接口rowid的类成员方法: getbytes定义及介绍
  • SQL Server统计SQL语句执行时间的脚本
  • java命名空间java.sql接口ref的类成员方法: getbasetypename定义及介绍
  • SQL客户端软件 PKLite SQL Client
  • java命名空间java.sql接口databasemetadata的类成员方法: getsqlkeywords定义及介绍


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3