设为首页收藏本站

EPS数据狗论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1669|回复: 0

Sqlserver数据库备份的几种方式

[复制链接]

40

主题

378

金钱

580

积分

初级用户

发表于 2019-3-4 14:46:08 | 显示全部楼层 |阅读模式
在实际的数据库Sqlserver的运维的过程中,很多时候我们需要做到数据的备份操作,可以做到定时备份,也可以进行手动数据库备份。在实际的过程中,有时候因业务需要备份出完整数据库,而有时候又因为实际业务只需要影响到一张表或者几张表,备份整个数据库未必是最优的方案,此时可采用生成脚本或者Select Into的方式对单表进行备份。DBA在运维过程中备份数据差不多用的就是以上几种操作方式,下面就详细说下这几种备份方式。

(1)数据库整库备份

此方式备份数据库是最完整的,可以将数据库中所有的对象都备份下来生成个.Bak文件,后续如果出现问题,可以直接通过.bak文件还原数据库,但备份的耗时会比较长,并且占用磁盘空间会比较大。此方法备份的操作是直接在Sqlserver数据库管理软件中选中数据库,右键选择任务,然后选择备份,如下图
1.png
然后进入备份界面后选择备份存放的路径以及设置好备份文件名称,点击确定即可进行备份,如下图
2.png

(2)通过生成脚本的方式单表备份

有时候我们业务系统的更新可能只涉及到一张表或者几张表,此时可以通过对每个数据表进行单表备份的方式来操作,只备份这几张涉及到变更操作的数据表。操作的方法为在Sqlserver数据库管理软件中选中数据库,右键选择任务,然后选择生成脚本,参考方法一中的第一个图。然后进入生成脚本界面,选择下一步进入设置界面:
3.png
进入设置界面后,选择特定的数据库对象,然后再从中选择你需要备份的数据表,如下图:
4.png
然后点击下一步,进入存储路径以及导出设置界面,保存到文件可以选择保存为单个文件或者每个对象一个文件。此处关键一点记得选择高级按钮,在里面设置要编写脚本的数据类型,否则默认规则导出来的文件中只含有表的架构语句(即创建table的SQL语句),不含有任何表数据。如下图
5.png
选择高级按钮后,进入高级设置项,将下拉菜单下拉到最后可以看到一个设置项叫做要编写脚本的数据的类型。将之设置为架构和数据或者仅限数据。只有这两种方式导出来的文件中才包含表格中的数据,仅限架构导出来的只是创建table的语句。
6.png
设置好上述信息后点击完成,自动创建备份文件到指定的存储路径下,生成的文件是.sql后缀的数据库SQL文件。

(3)通过Select Into语句将一个表快速备份到一个临时新表中。
此备份方法是将查找出来的数据快速写入到指定的备份新表中,自动创建table。
如将A数据库中的Product表所有数据快速备份到ABackUp数据库中的Product_0228表中,可使用以下语句操作,直接在新建查询窗口执行即可。
Select   *   Into  ABackUp.dbo.Product_0228  FROM A.dbo.Product;
执行此语句要求into后面的表在执行之前不存在,存在的话上述语句无法执行。这个Product_0228表格也无需手动处理,上述语句在执行的时候自动创建跟Product表一致的结构。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

客服中心
关闭
在线时间:
周一~周五
8:30-17:30
QQ群:
653541906
联系电话:
010-85786021-8017
在线咨询
客服中心

意见反馈|网站地图|手机版|小黑屋|EPS数据狗论坛 ( 京ICP备09019565号-3 )   

Powered by BFIT! X3.4

© 2008-2028 BFIT Inc.

快速回复 返回顶部 返回列表