SQL备份数据库代码
SQL备份数据库代码
#region 服务每天备份一次数据库
/// <summary>
/// 服务每天备份一次数据库
/// </summary>
public void ServiceForBackupDatabaseEveryDay()
{
Thread thread = new Thread(new ThreadStart(BackupDatabaseEveryDay));
thread.IsBackground = true;
thread.Start();
} private void BackupDatabaseEveryDay()
{
while (true)
{
try
{
//每天凌晨1点进行全备份
if (DateTime.Now.Hour == )
{
string filename = string.Format("Grandmap.Cms_Full_{0}.bak", DateTime.Now.ToString("yyyyMMddHHmmss"));
Hashtable param = new Hashtable();
param.Add("DatabaseName", "Grandmap.Cms");
param.Add("FileName", filename); //<![CDATA[ BACKUP DATABASE $DatabaseName$ TO DISK = '$FileName$';]]>
} Thread.Sleep(TimeSpan.FromHours());
}
catch (Exception ex)
{
Log4Net.Error("每天凌晨1点进行全备份数据库服务异常!", ex);
}
}
}
#endregion #region 每天12点和18点进行一次差异备份
/// <summary>
/// 每天12点和18点进行一次差异备份
/// </summary>
public void ServiceForBackupDatabaseWithDiffrent()
{
Thread thread = new Thread(new ThreadStart(BackupDatabaseWithDiffrent));
thread.IsBackground = true;
thread.Start();
} private void BackupDatabaseWithDiffrent()
{
while (true)
{
try
{
//每天12点和18进行差异备份
if (DateTime.Now.Hour == || DateTime.Now.Hour == )
{
string filename = string.Format("Grandmap.Cms_Diffrent_{0}.bak", DateTime.Now.ToString("yyyyMMddHHmmss"));
Hashtable param = new Hashtable();
param.Add("DatabaseName", "Grandmap.Cms");
param.Add("FileName", filename); //<![CDATA[ BACKUP DATABASE $DatabaseName$ TO DISK = '$FileName$' WITH DIFFERENTIAL;]]>
} Thread.Sleep(TimeSpan.FromHours());
}
catch (Exception ex)
{
Log4Net.Error("每天12点和18进行差异备份数据库服务异常!", ex);
}
}
}
#endregion #region 文件夹创建
/// <summary>
/// 文件夹创建
/// </summary>
public void CreateDir()
{
string filedir = DateTime.Now.ToString("yyyy-MM");
string xmlPath = AppDomain.CurrentDomain.BaseDirectory;
xmlPath = System.IO.Path.GetDirectoryName(xmlPath); if (!xmlPath.EndsWith("\\"))
{
xmlPath += "\\";
} xmlPath = string.Format("{0}DatabaseDir\\{1}", xmlPath, filedir); if (!Directory.Exists(xmlPath))
{
Directory.CreateDirectory(xmlPath);
}
}
#endregion
附:SQL存储过程
-- =============================================
-- Author: 管理员
-- Create date: 2016-03-12
-- Description: 备份数据库
-- =============================================
ALTER PROCEDURE [dbo].[up_BackupDatabase]
-- Add the parameters for the stored procedure here
@Backtype INT,
@Databasename VARCHAR(50),
@Filename VARCHAR(500)
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON; -- 全备份(压缩备份)
IF(@Backtype = 1)
BEGIN
BACKUP DATABASE @Databasename TO DISK = @Filename WITH COMPRESSION;
END --差异备份
IF(@Backtype = 2)
BEGIN
BACKUP DATABASE @Databasename TO DISK = @Filename WITH DIFFERENTIAL;
END
END
SQL备份数据库代码的更多相关文章
- php 备份数据库代码(生成word,excel,json,xml,sql)
单表备份代码: 复制代码代码如下: <?php class Db { var $conn; function Db($host="localhost",$user=" ...
- C#操作access和SQL server数据库代码实例
在C#的学习中,操作数据库是比较常用的技术,而access和sql server 数据库的操作却有着不同.那么,有哪些不同呢? 首先,需要引用不同的类.因为有着不同的数据引擎. access:usin ...
- sql server 数据库代码备份及还原代码
--备份 BACKUP DATABASE [库名称] TO DISK='E:\qq\ddd.bak' --备份并覆盖 BACKUP DATABASE [库名称] TO DISK='E:\qq\ddd. ...
- SQLSERVER SQL备份还原代码C#
public class BakDBHelper { /// <summary> /// 创建数据库备份 /// </summary> public string Create ...
- SQL Server数据库代码指令简介
这些是比较常用的命令操作,事先声明,这些命令是不区分大小写的,我按照我的课本来总结用法和知识点,无用的章节自动省略. 没有一点数据库知识基础的可以等我录制视频,不然可能看不懂,视频链接:http:// ...
- 一段后台C#查询SQL Server数据库代码
using System; using System.Data; using System.Collections.Generic; using System.Linq; using System.W ...
- Ubuntu Server下MySql数据库备份脚本代码
明: 我这里要把MySql数据库存放目录/var/lib/mysql下面的pw85数据库备份到/home/mysql_data里面,并且保存为mysqldata_bak_2012_04_11.tar. ...
- JDBC连接sql server数据库的详细步骤和代码
JDBC连接sql server数据库的详细步骤和代码 JDBC连接sql server数据库的步骤如下: 1.加载JDBC驱动程序: 在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(Ja ...
- JDBC连接sql server数据库的详细步骤和代码 转
JDBC连接sql server数据库的步骤如下: 1.加载JDBC驱动程序(只做一次): 在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(Java虚拟机), 这通过java.lang.C ...
随机推荐
- String 类实现 以及>> <<流插入/流提取运算符重载
简单版的String类,旨在说明>> <<重载 #include <iostream> //#include <cstring>//包含char*的字符 ...
- 【黑金原创教程】【FPGA那些事儿-驱动篇I 】实验十七:IIC储存模块 - FIFO读写
. int main() . { . int A: . A = : . } 代码17.1 话题为进入之前,首先让我们来聊聊一些题外话.那些学过软核NIOS的朋友可曾记得,软核NIOS可利用片上内存作为 ...
- 基于spring-cloud的微服务(2) eureka服务提供方的注册和消费方的消费
启动Eureka注册中心之后,服务提供方就可以注册到Eureka上去(作为一个Eureka的客户端) 我们使用IDEA提供的spring initializer来新建一个springcloud项目 填 ...
- Linguistic Data Consortium (LDC)
搞NLP的人经常会听到一个神秘的名字LDC,因为大量的论文所使用的数据都来自于LDC,本文就来揭露其神秘面目. About LDC: LDC,全名Linguistic Data Consortium, ...
- Linux下实现秒级定时任务的两种方案
Linux下实现秒级定时任务的两种方案(Crontab 每秒运行): 第一种方案,当然是写一个后台运行的脚本一直循环,然后每次循环sleep一段时间. while true ;do command s ...
- html的base标签
提示:请把 <base> 标签排在 <head> 元素中第一个元素的位置,这样 head 区域中其他元素就可以使用 <base> 元素中的信息了. 注释:如果使用了 ...
- java 中静态变量(类变量)与实例变量 静态方法与实例方法
静态变量: 在类内部中,方法的外部声明的对象而且加上static; 实例变量: 在类内部中,声明不需要加static; 比如: public class Demo{ int i1=0; static ...
- PowerSploit: The Easiest Shell You'll Ever Get - Pentest Geek - Penetration Testing - Infosec Professionals
PowerSploit: The Easiest Shell You'll Ever Get - Pentest... Sometimes you just want ...
- svm核函数的理解和选择
https://blog.csdn.net/leonis_v/article/details/50688766 特征空间的隐式映射:核函数 咱们首先给出核函数的来头:在上文中,我们已经了解到了S ...
- Java8 Collectors.toMap的坑
按照常规思维,往一个map里put一个已经存在的key,会把原有的key对应的value值覆盖,然而通过一次线上问题,发现Java8中的Collectors.toMap反其道而行之,它默认给抛异常,抛 ...