Sql Express数据备份和还原
参考文章:在SQL Server Express版本中没有代理功能如何自动备份数据库
首先用以下脚本,生成可以自动备份数据库的存储过程:
USE [master]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO CREATE PROCEDURE [dbo].[sp_BackupDatabases]
@databaseName sysname = null, --数据库名称
@backupLocation nvarchar(200) --备份位置
AS
SET NOCOUNT ON;
DECLARE @DBs TABLE
(
ID int IDENTITY PRIMARY KEY,
DBNAME nvarchar(500)
)
--用一个表来存放找到的所有数据库名
INSERT INTO @DBs (DBNAME)
SELECT Name FROM master.sys.databases
where state=0 AND name=@DatabaseName OR @DatabaseName IS NULL ORDER BY Name -- 过滤掉不需要备份的数据库(自定不需要备份的数据库名称填入括号内)
DELETE @DBs where DBNAME IN ('master','model','msdb','tempdb') DECLARE @BackupFile varchar(100) --备份文件名称
DECLARE @DBNAME varchar(300) --数据库名称
DECLARE @sqlCommand NVARCHAR(1000) --命令名称
DECLARE @dateTime NVARCHAR(20) --日期时间
DECLARE @Loop int --循环备份所找到的数据库 SELECT @Loop = min(ID) FROM @DBs --从第1个开始备份 WHILE @Loop IS NOT NULL --有数据库要备份时进行操作
BEGIN
--获得得数据库ID
SET @DBNAME = '['+(SELECT DBNAME FROM @DBs WHERE ID = @Loop)+']' --设置当前日期和时间,格式为年月日
SET @dateTime = REPLACE(CONVERT(VARCHAR, GETDATE(),112),'/','') --设置备份文件名称,例如: D:\SQLBak\dbname_FULL_20171121.BAK
SET @BackupFile = @backupLocation+REPLACE(REPLACE(@DBNAME, '[',''),']','')+ '_FULL_'+ @dateTime+ '.BAK' --按类型执行备份操作
SET @sqlCommand = 'BACKUP DATABASE ' +@DBNAME+ ' TO DISK = '''+@BackupFile+ ''' WITH INIT, NOSKIP, NOFORMAT' --开始执行备份命令
EXEC(@sqlCommand) --备份下一个数据库
SELECT @Loop = min(ID) FROM @DBs where ID>@Loop END
第二步执行存储过程,实现备份文件生成:
EXEC master.dbo.sp_BackupDatabases @databaseName='myTest_Db', @backupLocation='D:\testAutoDBBack\'
一个参数是要备份的数据库名称,第二个参数是:要存放备份文件的文件夹,提前在服务器上建好文件夹。
第三步把生成好的数据库备份文件,复制到目标文件夹中,然后在SQL Manager Studio中进行还原。
本文基本没有什么原创内容,只是按照参考文章实验了一下。实验结果可以实现。
Sql Express数据备份和还原的更多相关文章
- 转 MySQL 数据备份与还原
MySQL 数据备份与还原 原贴:http://www.cnblogs.com/kissdodog/p/4174421.html 一.数据备份 1.使用mysqldump命令备份 mysqldum ...
- MYSQL数据备份与还原学习笔记
数据备份与还原 1.mysqldump 1.1 文件地址: E:\xampp\mysql\bin 文件名:mysqldump.exe CMD下进入mysqldump.exe cd E:\xampp ...
- MySQL 数据备份与还原的示例代码
MySQL 数据备份与还原的示例代码 这篇文章主要介绍了MySQL 数据备份与还原的相关知识,本文通过示例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下 一.数据备份 1.使用 ...
- MySQL 数据备份与还原 转载
MySQL 数据备份与还原 一.数据备份 1.使用mysqldump命令备份 mysqldump命令将数据库中的数据备份成一个文本文件.表的结构和表中的数据将存储在生成的文本文件中. mysqldum ...
- day 50 MySQL数据备份与还原(mysqldump)
MySQL数据备份与还原(mysqldump) 一 mysqldump指令实现数据备份.mysql指令实现数据还原 经常有朋友问我,DBA到底是做什么的,百科上说:数据库管理员(Databas ...
- MySQL(四)数据备份与还原
数据备份与还原: 备份:将当前已有的数据或者记录保留 还原:将已经保留的数据恢复到对应的表中 为什么要做备份还原: 1.防止数据丢失:被盗.误操作 2.保护数据的记录 数据备份还原的方式很多:数据表备 ...
- MySql笔记之数据备份与还原
MySQL数据备份.还原与迁移 一.数据备份------mysqldump 1.语法: mysqldump -u user(用户名)-h host(登录用户的主机名称)-p password(登录密码 ...
- rabbitmq数据备份与还原
一.场景 现在有服务器A和服务器B ,由于业务需要,要求把服务器A上mq的数据迁移到服务器B上,rabbitmq的数据包括元数据(RabbitMQ用户.vhost.队列.交换和绑定)和消息数据,而消息 ...
- SQL Server 数据备份存储过程
原文:SQL Server 数据备份存储过程 今天开园,分享一下我一直在使用的数据备份存储过程,欢迎转载!!! ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 ...
随机推荐
- python之ProcessPoolExecutor
ProcessPoolExecutor使用上基本与ThreadPoolExecutor一致不过在windows上使用,有个问题需要注意.使用不当会出现如下错误 File "...\lib\m ...
- spring入门(六) spring mvc+mybatis
1.引入依赖 <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis --> <dependency> < ...
- iOS:常用属性、方法
前言:一段时间没接触,很容易就忘记以前的知识.专写一篇,供几个月没接触,拿起却忘记了. 0.宏定义.系统相关 0-1).宏定义.规范 变量: //全局变量通常用小写g来提示 int gNumb=0; ...
- 对TCP三次握手四次分手还不清楚,超简单解析
关于TCP三次握手四次分手,之前看资料解释的都很笼统,很多地方都不是很明白,所以很难记,前几天看的一个博客豁然开朗,可惜现在找不到了.现在把之前的疑惑总结起来,方便一下大家. 先上个TCP三次握手 ...
- MySQL 避免行锁升级为表锁——使用高效的索引
文章目录 普通索引 属性值重复率高 属性值重复率低 小结 众所周知,MySQL 的 InnoDB 存储引擎支持事务,支持行级锁(innodb的行锁是通过给索引项加锁实现的).得益于这些特性,数据库支持 ...
- 根据坐标计算距离(mysql函数)
CREATE DEFINER=`root`@`localhost` FUNCTION `getDistance`(lng1 ) BEGIN DECLARE result double; DECLARE ...
- 【转载】vue.js实现格式化时间并每秒更新显示功能示例
引用:https://www.jb51.net/article/143351.htm 这篇文章主要介绍了vue.js实现格式化时间并每秒更新显示功能,结合实例形式分析了vue.js时间格式化显示与基于 ...
- laravel 增删改查 数据库设置 路由设置
laravel 框架的路由设置: url: http://www.shanzezhao.com/laraverl/my_laravel/public/index.php/indexs laravel ...
- Cent OS 下 VI 使用方法
vi的基本概念 基本上vi可以分为三种状态,分别是命令模式(command mode).插入模式(Insert mode)和底行模式(last line mode),各模式的功能区分如下: 1) 命 ...
- 015---Django的forms组件
Django form表单 Form介绍 我们之前在HTML页面中利用form表单向后端提交数据时,都会写一些获取用户输入的标签并且用form标签把它们包起来. 与此同时我们在好多场景下都需要对用 ...