SQL一键备份用户数据库
大家都知道,Ms Sql 有自动备份的功能,但如果由于某种原因不能自动备份,或者我们想手动备份的话,就可以用下边的sql语句来执行备份。
--------------------代码开始-------------
USE [master]
------删除旧数据-------------------------------------------------------------
DECLARE @delTime VARCHAR(100)
SET @delTime = CONVERT(VARCHAR(100), GETDATE(), 126) -----当前时间
EXECUTE MASTER.dbo.xp_delete_file 0,'D:\DataBak','bak',@delTime,1
DECLARE @FILENAME VARCHAR(500)
DECLARE @DATABakPath VARCHAR(500)
DECLARE @DATABaseName VARCHAR(500)
DECLARE @DATAFullName VARCHAR(500)
SET @DATABakPath = 'D:\DataBak\'
DECLARE @temp TABLE(a INT, b INT, c INT)
DECLARE @exeText VARCHAR(100)
SET @FILENAME = REPLACE(
REPLACE(
REPLACE(CONVERT(VARCHAR, GETDATE(), 120), '-', ''),
' ',
''
),
':',
''
) + '.bak'
------------遍历所有用户数据库 进行备份-------------------------------------------------------------------
DECLARE My_Cursor CURSOR --定义游标
FOR
(
SELECT NAME
FROM sys.databases
WHERE NAME NOT IN ('master', 'msdb', 'tempdb', 'model',
'ReportServerTempDB', 'ReportServer')
) --查出需要的集合放到游标中
OPEN My_Cursor; --打开游标
FETCH NEXT FROM My_Cursor INTO @DATABaseName; --读取第一行数据
WHILE @@FETCH_STATUS = 0
BEGIN
SET @DATAFullName = @DATABakPath + @DATABaseName
SET @exeText = 'mkdir ' + @DATAFullName --创建备份目录
EXEC xp_cmdshell @exeText,
no_output
SET @DATAFullName = @DATAFullName + '\' + @FILENAME + ''
BACKUP DATABASE @DATABaseName TO DISK = @DATAFullName
FETCH NEXT FROM My_Cursor INTO @DATABaseName; --读取下一行数据
END
CLOSE My_Cursor; --关闭游标
DEALLOCATE My_Cursor; --释放游标
PRINT '-----------备份完成---------------------' + CONVERT(VARCHAR(100), GETDATE(), 126)+ '---------------'
--------------------代码结束-------------
SQL一键备份用户数据库相关推荐
- 一键备份MYSQL数据库脚本
编写一键备份MYSQL数据库脚本: 1)支持单个任意数据库的备份: 2)支持多个数据库同时备份: 3)支持所有数据库同时备份. 备份单个数据库 #!/bin/bash #mysql DB backup ...
- 编写一键备份MYSQL数据库脚本; 一键Nginx虚拟主机添加、删除脚本;
1.编写一键备份MYSQL数据库脚本: 1)支持任意单个或者多个数据库的备份: 2)支持多个数据库.所有库备份: 思路: 备份mysql数据库命令 #到处mysql所有库的数据到mysql_all.s ...
- SQL点滴12—SQL Server备份还原数据库中的小把戏
原文:SQL点滴12-SQL Server备份还原数据库中的小把戏 备份数据库时出现一个不太了解的错误 ,错误信息"is formatted to support 1 media fami ...
- 使用Python3编写脚本一键备份MySQL数据库
假设,MySQL的连接信息如下: host: 192.168.1.4 port: 3306 user: root password: mypassword 现在,我们需要对这台服务器上的数据库进行备份 ...
- 编写一键备份MYSQL数据库脚本
远程备份mysql数据库 1.mysql需要有远程访问权限 这里我为了方便,就设置所有地址都可以访问了.如果没有,在数据库中执行如下命令 创建备份用户及授权 >grant select,lock ...
- 一键备份MySQL数据库
将如下代码另存为.bat文件 @echo off echo. echo MySQL数据库备份 echo ***************************** echo. echo 今天 ...
- 通过sql注入窃取用户数据库信息
一.SQL注入的定义 SQL Injection ,即SQL注入,是指攻击者通过注入恶意的SQL命令,破坏SQL查询语句的结构,从而达到执行恶意SQL语句的目的.SQL注入漏洞的危害是巨大的,常常会导 ...
- Python远程操作Oracle实现一键备份还原数据库演示,利用socket进行imp、exp一键导入导出oracle数据库dmp文件
Python 远程操作 Oracle 进行数据库备份还原 第一章:效果演示 ① 数据库恢复演示 ② 请求模拟 第二章:功能实现 ① 创建启动服务 ② 处理解析请求 ③ 处理命令 ④ 服务端数据库操作 ...
- SQL Server备份的三个恢复模型
在SQL Server 2000中,有无数种备份数据库的方法.无论你的数据库有多大.改变是否频繁,都有满足你的要求的备份策略.让我们看看几种可以在不同环境下工作的基本备份策略. 本文假定你有备份数据库 ...
最新文章
- 深入Java虚拟机之虚拟机体系结构
- 4.3.3 IPv4地址
- 【工业控制】What is a Waveform
- IDEA一定要改的8条配置
- 从未如此简单:10分钟带你逆袭Kafka!
- jquery-ajax请求-1909
- 如何导出项目到本地_如何在win10中导入/导出组策略设置,这个技巧很实用
- matlab杜哈梅尔积分,非平稳地震作用下桥梁系统碰撞间隙宽度的概率评价方法与流程...
- 车载wince系统刷界面ui_UI入门秘笈,你想知道吗?
- SharePoint 2010的数据库服务器实例默认为sqlserver2
- 你用过Mybatis的动态SQL后,就知道写SQL有多爽了!
- 开启打印服务Print Spooler
- HTML动态视频背景全代码
- 计算机telnet命令大全,telnet 命令使用方法详解,telnet命令怎么用
- 加拿大高中课程计算机科学,加拿大高中课程
- Java字节码魔法数字_Java的魔法:字节码
- python爬虫入门实战之爬取美国体育网篮球比赛数据(selenium+xpath)
- SaaS 系统的应用与架构
- 解决 unity vs2017编辑器 全范围脚本报错 : predefined type 'system.object' is not defined or imported
- W7系统如何增大C盘空间(动态磁盘)
热门文章
- 2020年CNCF和开源项目开发速度
- Asp.Net Core 中如何设置 IP 白名单
- 五个 .NET 性能小贴士
- 基于ABP落地领域驱动设计-03.仓储和规约最佳实践和原则
- DDD实战课--学习笔记
- 有温度的技术,改善上亿人的生活
- 骚年快答 | 微服务架构中的BFF到底是啥?
- .NET Core开发实战(第16课:选项数据热更新:让服务感知配置的变化)--学习笔记...
- 《ASP.NET Core 微服务实战》-- 读书笔记(第10章)
- 【复杂系统迁移 .NET Core平台系列】之迁移项目工程