学习笔记-备份还原

一、备份还原的概念

1、  完整备份:完整备份因为需要备份的数据量大,所以需要在空闲时间进行,并且定期进行。

2、  日志备份:日志备份的数据量小,备份时间为上一次备份到本次本分期间的数据,每天都可以进行备份,或者每小时都可以进行备份,据所需备份。

3、  差异备份:只备份修改过的数据,与每小时进行的日志备份配合使用,效率更高。

二、备份设备

1、  在进行备份数据的保存时,需要输入的文件路径很长,并且每次都要输入,难免麻烦费事,所以我们先给文件路径取好别名,即备份设备,以便之后书写代码的方便。

2、 创建备份设备

 IF EXISTS
    (SELECT 1 FROM sys.backup_devices AS BD WHERE BD.name = ‘dp_EduBase_FullBackup‘)
    EXEC sp_dropdevice ‘dp_EduBase_FullBackup‘;
EXEC sp_addumpdevice ‘DISK‘,‘dp_EduBase_FullBackup‘,‘C:\EduBase\Backup\Full\dp_EduBase_FullBackup.bak‘;
IF EXISTS
    (SELECT 1 FROM sys.backup_devices AS BD WHERE BD.name = ‘dp_EduBase_DiffBackup‘)
    EXEC sp_dropdevice ‘dp_EduBase_DiffBackup‘;
EXEC sp_addumpdevice ‘DISK‘,‘dp_EduBase_DiffBackup‘,‘C:\EduBase\Backup\Diff\dp_EduBase_DiffBackup.bak‘;
IF EXISTS
    (SELECT 1 FROM sys.backup_devices AS BD WHERE BD.name = ‘dp_EduBase_LogBackup‘)
    EXEC sp_dropdevice ‘dp_EduBase_LogBackup‘;
EXEC sp_addumpdevice ‘DISK‘,‘dp_EduBase_LogBackup‘,‘C:\EduBase\Backup\Log\dp_EduBase_LogBackup.bak‘;    

1、  做完整备份

 USE EduBase;
DECLARE @FullBkDesc VARCHAR(MAX);        //申明备份设备
SELECT
    @FullBkDesc = ‘Weekly full backup for ‘+DB_NAME()+‘ at ‘+DATENAME(YEAR,GETDATE())+‘,week ‘+DATENAME(WEEK,GETDATE())+‘.(‘+CONVERT(VARCHAR,GETDATE(),120)+‘)‘;
BACKUP DATABASE EduBase
    TO dp_EduBase_FullBackup
    WITH
        INIT //INIT操作可以初始化文件,即可以覆盖掉之前的备份,保留本次操作过后的备份
        ,Name = ‘EduBase_FullBackup‘
        ,DESCRIPTION = @FullBkDesc;

2、 做日志备份

DECLARE @LogBkDesc VARCHAR(MAX);
SELECT
    @LogBkDesc = ‘Hourly log backup for ‘+DB_NAME()+‘ at ‘+DATENAME(YEAR,GETDATE())+‘,week ‘+DATENAME(WEEK,GETDATE())+‘,day ‘+CONVERT(VARCHAR,DATEPART(W,GETDATE())-1)+‘,hour ‘+CONVERT(VARCHAR,DATEPART(HOUR,GETDATE()))+‘.(‘+CONVERT(VARCHAR,GETDATE(),120)+‘)‘;
BACKUP LOG EduBase
    TO dp_EduBase_LogBackup
    WITH
        INIT
        ,Name = ‘EduBase_LogBackup‘
        ,DESCRIPTION = @LogBkDesc;

3、做差异备份

 DECLARE @DiffBkDesc VARCHAR(MAX);
SELECT
    @DiffBkDesc = ‘Daily Differential backup for ‘+DB_NAME()+‘ at ‘+DATENAME(YEAR,GETDATE())+‘,week ‘+DATENAME(WEEK,GETDATE())+‘,day ‘+CONVERT(VARCHAR,DATEPART(W,GETDATE())-1)+‘.(‘+CONVERT(VARCHAR,GETDATE(),120)+‘)‘;
BACKUP DATABASE EduBase
    TO dp_EduBase_DiffBackup
    WITH
        DIFFERENTIAL
        ,INIT
        ,Name = ‘EduBase_DiffBackup‘

原文地址:https://www.cnblogs.com/caiduncheng/p/8120262.html

时间: 2024-10-19 09:04:46

学习笔记-备份还原的相关文章

4、MongoDB学习之备份还原

一.MongoDB备份 1.MongoDB整库备份 备份数据使用下面的命令 mongodump -h dbhost -d dbname -o dbdirectory 备份user数据库 [[email protected] bin]# ./mongodump -h127.0.0.1 -d user -o /home/ [[email protected] bin]# ls /home/user/ b3.bson  b3.metadata.json  c1.bson  c1.metadata.js

Linux学习笔记 备份摘要

方案的目的:备份最重要的Linux档案 系统基本设定资讯 网络服务的内容资料 1.系统基本设定资讯 /etc 整个目录 其中 /etc/passwd /etc/show /etc/group /etc/gshadow 账号档案 /home 整个目录其中  /home/root 账号的家目录 /home/cici /var/spool/mail 邮件目录  <---省略 /boot 整个目录包含操作系启动时需要的文件 用户系统命令和应用程序信息 /usr/local/htdocs <===存放p

学习笔记(十三)——数据库备份还原的知识点与注意事项

学习笔记(十三)——数据库备份还原的知识点与注意事项 一.备份还原基本概念 1.  完整备份:完整备份因为需要备份的数据量大,所以需要在空闲时间进行,并且定期进行. 2.  日志备份:日志备份的数据量小,备份时间为上一次备份到本次本分期间的数据,每天都可以进行备份,或者每小时都可以进行备份,据所需备份. 3.  增量备份(差异备份):只备份修改过的数据,与每小时进行的日志备份配合使用,效率更高. 二.备份设备 1.          在进行备份数据的保存时,需要输入的文件路径很长,并且每次都要输

[简明python教程]学习笔记之编写简单备份脚本

[[email protected] 0503]# cat backup_ver3.py #!/usr/bin/python #filename:backup_ver3.py import os import time #source source=['/root/a.sh','/root/b.sh','/root/c.sh'] #source='/root/c.sh' #backup dir target_dir='/tmp/' today=target_dir+time.strftime('

Mariadb学习笔记-日志及备份

Mysql的日志种类 查询日志:general_log 慢查询日志:log_slow_querles 错误日志:log_error,log_warnings 二进制日志:binlog 中继日志:relay_log 事务日志:innodb_log 查询日志 记录查询语句,日志存储位置: 文件:file表:table(mysql.general_log) general_log={ON|OFF}general_log_file=HOSTNAME.loglog_output={FILE|TABLE|N

Bat脚本学习-4:Oracle自动备份还原脚本

从同事那弄到一份Oracle自动备份还原的脚本,看上去很强大,苦在bat语法不熟,查了半天文档,先弄明白了一小段 @echo off REM 在批处理中,我们可以用setloacl ENABLEDELAYEDEXPANSION这个命令来启用"延迟环境变量扩展" REM 在我们启用了"延迟环境变量扩展"后,当CMD在解释涵有嵌套格式的命令时,他会把嵌套的命令一条一条的先执行一次,然后再进行匹配操作 REM 这样我们的赋值操作就会完成.并且再"延迟环境变量扩展

MySQL学习笔记之七:数据的备份和恢复

我们知道,数据是一个企业IT架构的核心,为了防止因某些意外原因造成数据遗失或其它一些特殊目的,在平时对数据做好备份尤其重要. 一.为什么要备份 1.灾难恢复:硬件故障.软件故障.自然灾害.黑客攻击.误操作等 2.审计:有时需要知道数据在过去某个时间点是什么样的 3.测试:一个最简单的其于实际数据来测试的方法是,定期用最新的生产环境数据更新测试服务器,只要把备份文件还原到测试服务器即可 二.备份和恢复需要注意的要点 1.可容忍丢失多少数据 2.恢复需要在多长时间内完成 3.需要恢复什么 三.备份类

SQL server 笔记9(备份还原触发器事务三范式)

------备份还原 --右键数据库---任务 --备份:在不影响数据库正常运行的情况下,将数据备份到一个.bak结尾的文件夹 --还原:将bak文件还原到数据库 -----分离.附加 --分离:将数据库与数据库服务进行分离 --附加:将数据库mdf文件,附加到数据库服务上 --触发器:一种特殊的存储过程 特殊的地方在于,触发器是通过对数据库表的操作来引发 触发的动作只有‘增删改’ --存储过程是通过exec人为执行 create trigger student_insert --创建触发器 o

DB2数据库在线备份还原笔记

数据库在线增量备份    由于一般客户的生产系统数据量都很大,所以频繁的进行数据库或表空间的全量备份在空间存储上变得不可行.DB2 支持两种增量的备份,一种是增量备份(comulative backup),另一种是差异备份(deltabackup).总的说来,增量的备份(包括增量备份和差异备份),在其备份映像文件中只包含自上次进行备份以来有过更新的页,除更新的数据和索引页之外,每个增量备份映像还包含通常存储在完全备份映像中的初始数据库元数据(例如,数据库配置.表空间定义和数据库历史记录等).增量