1. 错误详情 有一次在手动执行数据库完整备份时遇到如下错误: 执行多次都是这个错误信息. 提示无法生成检查点,原因可能是由于系统资源(如磁盘或内存空间)不足或者有时是由于数据库损坏而造成的. 我们检查数据库资源可以排除磁盘资源不足的情况. 2.检查点相关知识 事务日志.数据文件 和 checkpoint的关系. 在SQL Server中,进行insert, update, delete时,数据并没有直接写入数据库对应的mdf文件中,而是写入了缓存里, 这时,就要提到一个非常重要机制:Check…
一. 理解: 完整备份为基础, 完整备份可以实物回滚还原,但是由于完整备份文件过大,对硬盘空间比较浪费这是就需要差异备份 或者 事务日志备份. 差异备份还原时,只能还原到备份的那个点, 日志备份还原时,可以还原到日志覆盖的时间段的任意点. 比如2013-07-01 10点进行了完整备份,2013-07-02 10点进行了差异备份.2013-07-02 10点也进行了日志备份. 今天是2013-07-19,如果你要还原到2013-07-02 10点的数据,就可以使差异备份.如果你想还原到2013-…
SQL Server数据库备份的镜像 一个完整备份可以分开镜像 USE master GO BACKUP DATABASE [testdatabase] TO DISK = N'C:\testdatabase1.bak' MIRROR TO DISK = N'D:\testdatabase2.bak' WITH FORMAT, INIT GO 一个完整备份可以先条带化,然后再分开镜像 USE master GO BACKUP DATABASE [testdatabase] TO DISK = N…
SQL Server差异备份的备份/还原原理 记住一点:差异备份是基于最后一次完整备份的差异,而不是基于最后一次差异的差异   备份过程: 1-完整备份之后有无对数据库做过修改,如果有,记录数据库的最后LSN(Last LSN) 如果完整备份之后无对数据库做过修改,那么差异备份就没有意义了   2-做差异备份时根据差异位图读取差异页面内容 注意:差异位图记录了自从最后一次完整备份以来数据库中有变化的页面,这样在做差异备份时候就不用扫全库页面,只需要读取有差异的页面   3-在备份之前,数据库会做…
1.全量数据备份    备份整个数据库,恢复时恢复所有.优点是简单,缺点是数据量太大,非常耗时 全数据库备份因为容易实施,被许多系统优先采用.在一天或一周中预定的时间进行全数据库备份使你不用动什么脑筋.使用这种类型的备份带来的问题是非常缺乏灵活性,而且当数据库被冲掉后,你面临丢失大量数据的潜在威胁.例如,假设你每天在午夜备份数据库. 如果服务器在晚上11点崩溃了,你将丢失前面23个小时对数据所做的全部修改.对大多数系统来说,这是无法接受的.对此规则,为数不多的例外如下: 1.系统中所存的数据可以…
最近心相不错,所以打算翻译一些英文文档做福利,原文在此,翻译有不足的地方还请各位兄弟指点. 讨论什么是DBA最重要的工作的时候,你最常听到就是一条就是DBA只要做好备份和恢复.事实如此,如果你不做备份,或者无法保证你的备份能够有效恢复,你和你的公司就会处于数据丢失危险下. T-SQL 命令BACKUP DATABASE已经使用了相当长的一段时间(在这之前用的是DUMP DATABASE 命令,老人们都记得). 它仍然不失为备份数据库好方式.我们现在有一个新的方法来自动的做这些日常的备份处理任务.…
原文:SQL Server的备份 0.参考文献 1.恢复模式 SQL Server 备份和还原操作发生在数据库的恢复模式的上下文中. 恢复模式旨在控制事务日志维护. “恢复模式”是一种数据库属性,它控制如何记录事务,事务日志是否需要(以及允许)备份,以及可以使用哪些类型的还原操作. 有三种恢复模式:简单恢复模式.完整恢复模式和大容量日志恢复模式.通常,数据库使用完整恢复模式或简单恢复模式.可以在执行大容量操作之前切换到大容量日志恢复模式,以补充完整恢复模式.数据库可以随时切换为其他恢复模式. 1…
一般生产库,采用 每10分钟备份Log,每天备份Diff,每周备份Full的策略. 同时存在异地备份.异地备份可使用SQL Server本身的cmdshell存储过程,调用系统命令. 在为新数据库,建立备份策略后,往往日志开始首先备份. 这时,若新库之前没有Full备份,则Log备份,Diff备份均失败.Diff和Log备份都依赖于完整备份,而一个新库是没有完整备份的. 所以策略运行第一周会失败. 为了避免这个问题,要手工运行下Full备份. 新库,若没备份过,如下图.…
通过Windows批处理命令执行SQL Server数据库备份 建立mybackup.bat ,输入以下内容直接运行该脚本,即可开始自动备份数据库也可把该脚本加入windows任务计划里执行. ----------------------------------------------------------------------------@echo off set path=%path%;C:Program Files\Microsoft SQL Server\80\Tools\Binn…
例1: 有A数据库服务器,B本机: 我现在想通过在B机器上通过代码调用SQL来执行A数据库的备份到B机器上 调用的SQL语句为:Backup Database MYDATABASE To Disk='D:/test.bak',这样备份的目录是数据库服务器A的D盘下: 怎么才能备份到A的D盘下呢? 请各位给予建议,谢谢! -----------------------------------------------------------------------------------------…
前言 因工作需要将数据库每日备份至服务器本地磁盘和其他服务器磁盘,对网上的例子进行改造,解决了SQL server数据库备份的问题. 一.将指定数据库备份到本地 将数据库affair_stydy全备份至服务器H盘的AutoBackup文件夹下,实例如下: DECLARE ) ),)+'.bak' BACKUP DATABASE[affair_stydy]TO DISK=@NAME WITH NOFORMAT, NOINIT, NAME = N'affair_stydy_完整 数据库 备份', S…
一.备份 1.登录数据库 2.找到要还原的数据库 右键-任务-备份-添加(路径只写一个,刚开始二个总是报错)-确定 二.还原数据库 这个之间报错了二次 1.报错1:备份集中的数据库与现有数据库“XXX”数据库不同 解决---在还原数据库的时候选择下面这二个 2.错误2: 解决: 1.执行如下语句 ALTER DATABASE [数据库名称] SET OFFLINE WITH ROLLBACK IMMEDIATE 2.设置方法:在需要还原的数据库上右击,在右键菜单命令上选择"属性"- &…
sql server远程备份和恢复 SQLSERVER服务实例名称:192.168.0.2需要备份的数据库名称: a备份机器名称(Client端):192.168.0.3备份机用户:zf 密码:123备份机域名:domain备份机提供备份需求的文件夹:D:\sqlbak 备份数据库 第一步: 在备份机建立共享文件夹               在程序代码中调用(或者CMD窗口)   net share sqlbakup=D:\sqlbak     或者用NetShareAdd这个API     …
    本文介绍了SQL Server数据库备份的两种方式.一种是直接拷贝数据库中的文件mdf 和日志文件ldf,另一种是生成脚本语言. 第一种方式:     选中需要备份的数据库,将数据库从运行的数据库服务器中断开,然后复制,操作如下:     右键——任务——分离:   选择,删除链接: 找到刚断开连接的数据库,备份出来. 那么,我们改如何还原数据库呢?操作如下:     第二种方式: 生成脚本.操作如下: 那么,我们该如何还原呢? 选中所有的内容,单击执行!…
SQL Server网络地址备份 Ø  软件系统: SQL Server 各版本 1.问题描述: 在XX客户做SQL Server 到Oracle 数据迁移时,当时由于客户的SQL Server2005所在的服务器可用磁盘不足(数据库备份文件50GB而服务器可用空间只有35GB.),无法进行本地备份,但是整个迁移过程需要对SQL Server数据库有较大的操作,所以必须进行备份,此时只能选择网络远程备份. 2.解决方法: (1).首先建立虚拟目录,这个必须通过SQL Server管理器进行建立虚…
        之前在设置服务器Sql Server 维护计划 备份的sql server 数据库,都是累加的,后来也没有仔细看过,后台回过头来考虑到服务器的存储空间,只好做sql server 数据备份覆盖.   BACKUP DATABASE [数据库名] TO  DISK = N'D:\数据库名.bak' WITH NOFORMAT, INIT,  NAME = N'数据库名', SKIP, REWIND, NOUNLOAD,  STATS = 10 GO   可能方法有点笨,但是确实可行…
基础的SQL Server数据库备份存储过程 /****************************************************************************************************** ** 功能:本机备份数据库 ** 作者:Danny,Li ** 日期:2012-11-05 ** --------------------------------------------------------------------------…
SQL Server日期函数之获得一个月中的天数在实际中的应用比例还是占为多数的,如果你对这一技术,心存好奇的话,以下的文章将会揭开它的神秘面纱,望会在以后的学习或是工作中带来很大的帮助. 获得一个月的天数,技巧是:首先到得一个月最后一天的日期,然后通过 SQL Server 日期函数 day() 取得日期中的“天” 部分. 获得 2008 年 2 月份的天数: select day(cast('2008-03-01' as datetime) - 1) 获得本月天数: select day(d…
原文:SQL Server 2008备份数据库失败,拒绝访问的原因 备份数据到特定目录是出现拒绝访问,然后测试备份到C盘根目录正常. 查了下原因: 是因为那个目录没有Authenticated Users的读写权限. 解决办法就是给sqlserver用户授予权限: 选择要备份的文件夹 ,右键-->属性-->安全-->看下"组或用户"是否包涵Authenticated Users 这个用名,因为是包括在计算机上或活动目录中的所有通过身份验证的账户,如果有了则给其分配读写…
问题一:SQL server数据库备份还原方法 http://www.cnblogs.com/zgqys1980/archive/2012/07/04/2576382.html 问题二:无法执行 BACKUP LOG,因为当前没有数据库备份 http://blog.csdn.net/aojiancc2/article/details/46316451 问题三:还原数据库失败 备份集中数据库备份与现有数据库不同 http://jingyan.baidu.com/article/fb48e8be52…
1.使用场景:sql server数据库备份单个表的结构和数据,在我们要修改正式系统的数据的一天或者多条某些数据时候,要执行update语句操作,安全稳健考虑,最好先做好所修改的表的结构和数据备份! 2.操作方法:第一步:由于不是整个数据库备份,不是点备份.还原操作,要选择整个数据库然后右击,选择:任务——生成脚本,如下图: 第二部:在选择对象的步骤,如下图红框的单选按钮组默认的是第一个(即整个数据库对象脚本),要点击选择下面的第二个(即选择特定数据库对象),然后选中要经行备份的表,点击下一步,…
sql server 数据库备份历史记录 SELECT ),SERVERPROPERTY('Servername'))AS Server, bs.database_name, bs.backup_start_date, bs.backup_finish_date, bs.expiration_date, CASE bs.type WHEN 'D' THEN 'Database' WHEN 'L' THEN 'Log' END AS backup_type, bs.backup_size, bmf…
原文:SQL Server 游标运用:查看一个数据库所有表大小信息(Sizes of All Tables in a Database) 一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 实现代码(SQL Codes) 方法一:运用游标 方法二:运用系统存储过程 方法三:拼接SQL 参考文献(References) 二.背景(Contexts) 在性能调优或者需要了解某数据库表信息的时候,最直观的方式就是罗列出这个数据所有表的信息,这些信息…
1.使用场景:sql server数据库备份单个表的结构和数据,在我们要修改正式系统的数据的一天或者多条某些数据时候,要执行update语句操作,安全稳健考虑,最好先做好所修改的表的结构和数据备份! 2.操作方法:第一步:由于不是整个数据库备份,不是点备份.还原操作,要选择整个数据库然后右击,选择:任务——生成脚本,如下图: 第二部:在选择对象的步骤,如下图红框的单选按钮组默认的是第一个(即整个数据库对象脚本),要点击选择下面的第二个(即选择特定数据库对象),然后选中要经行备份的表,点击下一步,…
原文:SQL Server 数据备份存储过程 今天开园,分享一下我一直在使用的数据备份存储过程,欢迎转载!!! ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67…
SQL Server数据库 备份A库,然后删除A库,再还原A库,此时数据库一直显示"正在还原"的解决方法: A库一直显示"正在还原". 在这种状态下,由于未提交的事务没有回滚,导致数据库不可以访问. 解决:新建查询,执行restore database A   with recovery语句后正常 -- A代表数据库名称…
最近在查询SQL时遇到SQL文件错误,可能是文件数据已损坏.解决过程分享给大家. 问题描述 消息 824,级别 24,状态 2,第 1 行SQL Server 检测到基于一致性的逻辑 I/O 错误 pageid 不正确(应为 1:19741588,但实际为 0:0).在文件 'D:\analytics.MDF' 中.偏移量为 0x000025a7728000 的位置对数据库 ID 10 中的页 (1:19741588) 执行 读取 期间,发生了该错误.SQL Server 错误日志或系统事件日志…
引用:http://luowei1371984.blog.163.com/blog/static/44041589201491844323885/ SQL2008运行select count(*) from produce出现以下的错误(所在数据库暂以test命名)================================消息 824,级别 24,状态 2,第 1 行SQL Server 检测到基于一致性的逻辑 I/O 错误 校验和不正确(应为: 0xca242b1f,但实际为: 0xfb…
SQL Server 检测到基于一致性的逻辑 I/O 错误 pageid 不正确(应为 1:1772,但实际为 0:0).在文件 'D:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\sgdtcc.MDF' 中.偏移量为 0x00000000dd8000 的位置对数据库 ID 10 中的页 (1:1772) 执行 读取 期间,发生了该错误.SQL Server 错误日志或系统事件日志中的其他消息可能提供了…
背景:新建DB_GZN 恢复数据库备份文件 执行:          select * from VI_MPS_PAPLT 错误提示: 消息 824,级别 24,状态 2,第 2 行 SQL Server 检测到基于一致性的逻辑 I/O 错误 校验和不正确(应为: 0x20d61048,但实际为: 0x7a8ab3ae).在文件 'C:/Program Files/Microsoft SQL Server/MSSQL10.MSSQLSERVER/MSSQL/DATA/DB_GZN.mdf' 中.…