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 ...
随机推荐
- python基础---->python的使用(五)
这里记录一些python的一些基础知识,主要内容是高阶函数的使用.或许我的心包有一层硬壳,能破壳而入的东西是极其有限的.所以我才不能对人一往情深. python中的高阶函数 一.map().reduc ...
- 原生js--客户端存储的种类
客户端存储遵循同源策略,不同的站点页面之间不可以相互读取对方的数据,但同一站点的不同页面之间可以共享存储的数据 客户端存储的种类: 1.web存储 localStorage.sessionStorag ...
- 原生js--http请求
1.终止请求和超时 终止请求XMLHttpRequest对象提供abort方法,调用该方法时触发abort事件 XHR2提供了timeout属性,当超时发生时触发timeout事件.但浏览器尚不支持自 ...
- Android density、dpi、dp、px
Density DPI Example Device Scale Pixels ldpi 120 Galaxy Y 0.75x 1dp = 0.75px mdpi 160 Galaxy Tab 1.0 ...
- 剖析Elasticsearch集群系列之一:Elasticsearch的存储模型和读写操作
转载:http://www.infoq.com/cn/articles/analysis-of-elasticsearch-cluster-part01 1.辨析Elasticsearch的索引与Lu ...
- 关于VMware虚拟机磁盘收缩的几种方法
VMware虚拟机在使用过程中,随着软件和数据的增多,虚拟磁盘占用的硬盘空间会逐渐增大,但删除数据后,却不会自动减小占用的物理硬盘空间 而是继续占用相应大小.如果需要解决上面的问题,就需要收缩wmwa ...
- Windows 8.1 100% 磁盘使用率解决方案
前段时间我的win8电脑爆卡!动不动就卡死,一点都动不了. 好不容易打开了任务管理器,发现disk usage: 100%,实在是不理解,磁盘使用率100%怎么会影响流畅度?如果是CPU或内存还好理解 ...
- Redis+Keepalived实现高可用
使用redis哨兵可以在主服务器出现故障的时候自动切换主从,但是从服务器的IP不同于原主服务器的IP还需要在客户端手动修改IP才能生效 下面使用keepalived实现VIP自动漂移 keepaliv ...
- ubuntu16.04下安装ros-kinetic
参考:http://wiki.ros.org/kinetic/Installation/Ubuntu 1.添加ROS软件源 ~$ sudo sh -c 'echo "deb http://p ...
- HDU_6033_Add More Zero
Add More Zero Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)T ...