SQL server 2008 数据安全(备份和恢复数据库)

下边是我对部分内容的总结,里边偏向了T-SQL语句实现的总结,对于SQL Server Management Studio中对象管理器的操作并没有太多的总结,因为这些都有一些向导,而且,大部分都是在对应的节点,右击找相应的操作,相应的对象,然后根基向导去操作!

首先是大概知识点的总结:

下边是一些T-SQL语句对应的总结,1,管理备份设备的语句:

2,备份的语句:

3,数据恢复的对应语句:

最后,

上边讲到了备份有完全备份,差异备份,事务日志备份和文件组和数据文件备份,恢复有简单恢复,简单恢复,大容量日志恢复。但是这四种备份方式有什么不同呢,有什么各自的用处呢?这三种恢复又需要什么条件呢?这里,我给大家剖析一下:

备份:

1,完全备份:备份内容,包括备份数据库中的所有数据,文件组或数据文件;适用类型:对于小型数据库和中型数据库,完全备份是最常用的技术.缺点:此过程非常耗时,一旦开始备份就不能中途停止.

2,差异备份:备份内容:记录自最后一次去备份以来改变的数据;适用类型:使用于进行过完全备份的数据库;缺点:还原时非常耗时,还原需要还原最后一次完全备份和以后所有的差异备份.

3,事务日志备份:备份内容,备份数据库中已经完成的事务,实现了备份可以真正灵活的时间点恢复;适用类型:数据库处于完全恢复和大容量日志恢复模式;

4,文件组备份:内容,对于与数据库中某个文件有关的所有数据文件的备份.类似于完全备份,但可以是小分支的备份.例如,可以备份一个公司中一个部门或工作组的备份.

5,数据文件备份:内容,只对文件组中的一个文件进行备份,同单独还原一个数据文件的功能协同工作.优点,时间短,可以选择性的备份数据库中的某些文件.

恢复:

1,简单恢复:需要:进行数据库恢复时仅使用数据库备份和差异备份而不涉及事务日志备份。效果:可以恢复到上一次备份的状态,但无法恢复到失败点的状态。

2,完全恢复:需要,采用数据库备份,差异备份和事务日志备份来恢复到失败点的时刻,需要将所有的数据库操作都写入到日志文件中;效果,不造成任何损失。

3,大容量日志备份:需要,和完全备份基本相同;效果,在性能上要优于上边两种方式,它最大努力减少了批操作所需要的存储空间。

时间: 2012-07-29

mssql自动备份及自动清除日志文件服务器设置

1.每日自动备份 强烈建议有条件的用户进行此操作! 1.打开企业管理器,在控制台根目录中依次点开Microsoft SQL Server--SQL Server组--双击打开你的服务器 2.然后点上面菜单中的工具--选择数据库维护计划器 3.下一步选择要进行自动备份的数据--下一步更新数据优化信息,这里一般不用做选择--下一步检查数据完整性,也一般不选择 4.下一步指定数据库维护计划,默认的是1周备份一次,点击更改选择每天备份后点确定 5.下一步指定备份的磁盘目录,选择指定目录,如您可以在D盘新

SQL Server 2008及更高版本数据库恢复方法之日志尾部备份

经常看到有人误删数据,或者误操作,特别是update和delete的时候没有加where,然后就喊爹喊娘了.人非圣贤孰能无过,做错可以理解,但不能纵容,这个以后再说,现在先来解决问题. 遇到这种情况,一般都是没有做备份,不然也不会来发问了.首先要冷静,否则会有更大的灾难.直到你放弃. 解决方法: 对于这类问题,主要是找回误操作之前的数据,在2008之前,有个很出名的工具Log Exploer,听说还挺好用的,这个网上大把教程,这里就不多说了.但是唯一遗憾的是,不支持2008及更高版本,这时除了其

SQL Server误区30日谈 第20天 破坏日志备份链之后,需要一个完整备份来重新开始日志链

误区 #20:在破坏日志备份链之后,需要一个完整备份来重新开始日志链 错误 事务日志备份会备份自上次事务日志备份以来所有的事务日志(如果从来没有过日志备份的话,那就从上一次完整备份开始).有好几种类型的操作会中断事务日志的连续性,也就是说除非重新开始新的日志链,SQL Server无法再进行日志备份.下面这几种操作都有可能引起日志链断裂: 由完整恢复模式或大容量事务日志恢复模式转为简单恢复模式 从数据库镜像进行恢复 备份日志时指定了NO_LOG 或 WITH TRUNCATE_ONLY(还好在S

SQL Server2008 数据库误删除数据的恢复方法分享

SQL Server中误删除数据的恢复本来不是件难事,从事务日志恢复即可.但是,这个恢复需要有两个前提条件: 1. 至少有一个误删除之前的数据库完全备份. 2. 数据库的恢复模式(Recovery mode)是"完全(Full)". 针对这两个前提条件,会有三种情况: 情况一.如果这两个前提条件都存在,通过SQL语句只需三步就能恢复(参考文章),无法借助第三方工具. a) 备份当前数据库的事务日志:BACKUP LOG [数据库名] TO disk= N'备份文件名' WITH NOR

sqlserver 数据库日志备份和恢复步骤

--创建测试数据库 CREATE DATABASE Db GO --对数据库进行备份 BACKUP DATABASE Db TO DISK='c:\db.bak' WITH FORMAT GO --创建测试表 CREATE TABLE Db.dbo.TB_test(ID int) --延时1秒钟,再进行后面的操作(这是由于SQL Server的时间精度最大为百分之三秒,不延时的话,可能会导致还原到时间点的操作失败) WAITFOR DELAY '00:00:01' GO --假设我们现在误操作删

SQL Server 2008数据库误删数据如何进行数据恢复

有个朋友很着急地打电话给我,他用delete语句误删除了SQL Server 2008数据库中两个表中的所有记录,而这个数据库之前没有任何备份.让我帮他解决一下,不然他要赔偿客户很多钱. SQL Server中误删除数据的恢复本来不是件难事,从事务日志恢复即可.但是,这个恢复需要有两个前提条件: 1. 至少有一个误删除之前的数据库完全备份. 2. 数据库的恢复模式(Recovery mode)是"完整(Full)". 针对这两个前提条件,会有三种情况: 情况一.如果这两个前提条件都存在

Shell脚本定时备份清除运行系统日志的代码

一.写备份并清除老日志Shell脚本: 复制代码 代码如下: #!/bin/sh#backup eoslog#author rhao#date 2008-12-27 #定义环境变量EOS_HOME=/home/eosSAS_HOME=/home/eos/SAS # 测试主辅结点if test -d '/home/eos/SAS/SAS1_web1'then        SAS_LOG_HOME=$SAS_HOME/SAS1_web1/SAS_Domain/binelse        SAS_

数据库崩溃,利用备份和日志进行灾难恢复

在实际的工作中,我们可能经常会遇到数据库宕机,数据丢失的情况,下面,我将演示一个模拟环境 1.数据库正常启动插入数据: [root@client103 ~]# mysql -uroot -pkongzhong mysql> use test; mysql> insert into a select * from a; #注: 这里不演示建表,默认大家都懂 # 下面进行一次全备 [root@client103 ~]# innobackupex --user=root --password=kon

win平台oracle rman备份和删除dg备库归档日志脚本

总觉得使用windows跑oracle是不靠谱的事情,可以这个世界上总有很多人喜欢做类似这样的事情,对于数据库比较常见的两件事情:rman和删除dg备库归档日志,在linux/unix平台上使用shell实现很简单,可是跑到win里面,就变的烦了,不是因为其麻烦,而是因为用的人少,不知道怎么下手处理该事情,我编写了简单的实现初级功能的win下面rman备份和删除备库归档日志脚本,供大家参考,也更加欢迎朋友提出来更加好的处理方法(win是真心的不懂)rman备份脚本 复制代码 代码如下: --ba

定时自动备份IIS的WWW日志的vbs脚本

dim IISCount,IISObject,logfiledir,fso,LogFilePeriods,inputtime,site,sites,i,j,sitename(999),WshShell 'on error resume next set WshShell = WScript.CreateObject("WScript.Shell") Set fso = CreateObject("scripting.FileSystemObject") set II

CentOS7下 MySQL定时自动备份的实现方法

生产环境遇到得最幸福得事情就是,某些场景没办法避免去update或者delete的时候,某个参数没有注意.完蛋了 完蛋了,数据被我搞崩了怎么办,赶紧去运营找备份呀!运营说:狗屁 咱们系统从来不备份,你说:那把日志给我吧,运营说:狗屁 每天上G的日志,我都没给你开,你说:怎么办,数据库被我搞崩了.运营说:那是你的事,跟我没关系........这是某公司的一段写照,所以今天我们来把这个情况给杜绝 今天要给客户部署一套系统,使用的MySQL5.7,那客户那边的开发人员我可不敢保证他们的能力咋样.我只能

SQL Server数据库定时自动备份

SQL Server 数据库定时自动备份,供大家参考,具体内容如下 在SQL Server中出于数据安全的考虑,所以需要定期的备份数据库.而备份数据库一般又是在凌晨时间基本没有数据库操作的时候进行,所以我们不可能要求管理员每天守到晚上1点去备份数据库.要实现数据库的定时自动备份,最常用的方式就是使用SQL Server代理中的作业.启动SQL Server Agent服务,然后在其中新建作业,作业中添加1个备份步骤,类型是T-SQL脚本,然后在命令中输入如下SQL语句,该语句实现了对数据库Tes

IIS备份 自动备份IIS设置和恢复IIS设置(自动还原Web服务器)

WIN2003 IIS --> 右键 --> 所有任务 --> 备份/还原配置 备份后文件会保存在 %WINDIR%\system32\inetsrv\MetaBack 目录下... 备份IIS设置 IIS本身自带了备份和恢复IIS设置的功能.在恢复IIS设置之前需要备份IIS.备份的过程很简单:在Windows 2000 Server中找到"开始"菜单中的"管理工具",点击其中的"Internet服务管理器",在服务器名称上右

文件夹定时自动备份 AutoBackUpFolder.vbs

复制代码 代码如下: '/*========================================================================= ' * Intro 定时自动备份文件夹到一个以时间命名的新目录,设置好后加到启动项里,只要一启动机器程序就会自动运行,占系统资源可以不计 ' * FileName AutoBackUpFolder.VBS ' * Author yongfa365 ' * Version v1.0 ' * Email yongfa365[a

SQL server 定时自动备份数据库的图文方法

SQL2000版本 用JOB 企业管理器 --管理 --SQL Server代理 --右键作业 --新建作业 --"常规"项中输入作业名称 --"步骤"项 --新建 --"步骤名"中输入步骤名 --"类型"中选择"Transact-SQL 脚本(TSQL)" --"数据库"选择执行命令的数据库 --"命令"中输入要执行的语句: --确定 --"调度"

python实现定时自动备份文件到其他主机的实例代码

定时将源文件或目录使用WinRAR压缩并自动备份到本地或网络上的主机 1.确保WinRAR安装在默认路径或者把WinRAR.exe添加到环境变量中 2.在代码里的sources填写备份的文件或目录,target_dir填写备份目的目录 3.delete_source_file为备份完后是否删除源文件(不删除子文件夹) 4.备份成功/失败后生成备份日志 按照格式,填写源目的: sources = [r'E:\目录1', r'E:\目录2\b.txt'] #例:= [ r'E:\test\1234.

微信小程序云开发如何实现数据库自动备份实现

前言 数据是无价的,我们通常会把重要的业务数据存放在数据库中,并需要对数据库做定时的自动备份工作,防止数据异常丢失,造成无法挽回的损失. 小程序云开发提供了方便的云数据库供我们直接使用,云开发使用了腾讯云提供的云数据库,拥有完善的数据保障机制,无需担心数据丢失.但是,我们还是不可避免的会担心数据库中数据的安全,比如不小心删除了数据集合,写入了脏数据等. 还好,云开发控制台提供了数据集合的导出,导入功能,我们可以手动备份数据库.不过,总是手动备份数据库也太麻烦了点,所有重复的事情都应该让代码去解决

linux实现mysql数据库每天自动备份定时备份

 概述 备份是容灾的基础,是指为防止系统出现操作失误或系统故障导致数据丢失,而将全部或部分数据集合从应用主机的硬盘或阵列复制到其它的存储介质的过程.而对于一些网站.系统来说,数据库就是一切,所以做好数据库的备份是至关重要的! 备份是什么? 为什么要备份 容灾方案建设 存储介质 光盘 磁带 硬盘 磁盘阵列 DAS:直接附加存储 NAS:网络附加存储 SAN:存储区域网络 云存储 这里主要以本地磁盘为存储介质讲一下计划任务的添加使用,基本的备份脚本,其它存储介质只是介质的访问方式可能不大一样. 1.