SQLSERVER异机备份 T-SQL

SQLSERVER异机备份

 实在是太懒的用系统自带了,设置起来好麻烦呀,直接敲码吧,哈哈

 1 /*
 2 作者:landv
 3 功能:异机备份
 4 开发时间:2016年7月2日 15:27:08
 5 
 6 */
 7 if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[p_backupdb]') and OBJECTPROPERTY(id, N'IsProcedure') = 1) 
 8 drop procedure [dbo].[p_backupdb] 
 9 GO
10 create proc p_backupdb 
11 @dbname sysname='AIS20110306202234',
12 @bkpath nvarchar(260)='\\k3ser\landvback\',--exec master..xp_cmdshell 'net use \\计算机名\共享目录 "密码" /USER:计算机名\用户我';(\\计算机名\共享目录\备份文件名)
13 @bkfname nvarchar(260)='\DBNAME\_backup_\DATE\_\TIME\.BAK',
14 @bktype nvarchar(10)='DB',
15 @appendfile bit=1
16 as 
17 declare @sql varchar(8000) 
18 if isnull(@dbname,'')='' set @dbname=db_name() 
19 if isnull(@bkpath,'')='' set @bkpath=''
20 if isnull(@bkfname,'')='' set @bkfname='\DBNAME\_\DATE\_\TIME\.BAK' 
21 set @bkfname=replace(replace(replace(@bkfname,'\DBNAME\',@dbname)
22 ,'\DATE\',convert(varchar,getdate(),112)) 
23 ,'\TIME\',replace(convert(varchar,getdate(),108),':','')) 
24 set @sql='backup '+case @bktype when 'LOG' then 'log ' else 'database ' end +@dbname 
25 +' to disk='''+@bkpath+@bkfname 
26 +''' with '+case @bktype when 'DF' then 'DIFFERENTIAL,' else '' end 
27 +case @appendfile when 1 then 'NOINIT' else 'INIT' end 
28 print @sql 
29 exec(@sql) 
30 go
31 exec p_backupdb

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏杨建荣的学习笔记

Oracle 12c升级检查问题分析(r10笔记第69天)

今天计划把一个测试环境升级到12c,为了练练手,先在备库上来做。数据库版本是11.2.0.3.0,计划升级到12.1.0.2.0。 为了不影响原有的测试主库,我...

44480
来自专栏乐沙弥的世界

记一次奇怪的ORA-04028: cannot generate diana for object

      开发人员说新建了一个package,在编译的过程中出现了一些错误。提示为PL/SQL:ORA-00942: table or view does n...

7310
来自专栏数据和云

与时俱进:ASM内存管理与创建表空间之ORA-569错误解决

杨廷琨(yangtingkun) 云和恩墨 CTO 高级咨询顾问,Oracle ACE总监,ITPUB Oracle数据库管理版版主 在一个测试数据库上创建表空...

424100
来自专栏c#开发者

数据中心使用dtu远程连接oracel 9i数据库问题

数据中心使用dtu远程连接oracel 9i数据库问题 发表人:lurrance | 发表时间: 2005年二月20日, 12:13 经过从网上找来的资料以及看...

383110
来自专栏数据库新发现

使用热备份进行分时恢复----怎样通过归档逐步恢复以缩短数据迁移时间

Last Updated: Monday, 2004-11-15 10:32 Eygle

13130
来自专栏乐沙弥的世界

ORA-19815,ORA-19809 :limit exceeded for recovery files

    数据库重新启动的时候,收到了ORA-19815的错误。从错误的提示来看,是由于闪回区的空间被填满导致无法成功启动。这种情形我们通常考虑的是清除归档日志,...

11730
来自专栏伦少的博客

centos7 安装oracle11

转载请务必注明原创地址为:http://dongkelun.com/2018/05/05/oracleConf/

2.6K130
来自专栏伦少的博客

利用ogg实现oracle到kafka的增量数据实时同步

转载请务必注明原创地址为:https://dongkelun.com/2018/05/23/oggOracle2Kafka/

6.3K40
来自专栏杨建荣的学习笔记

一条sql语句导致的数据库宕机问题及分析(42天)

之前分享过一篇博文,是一条sql语句"导致"的数据库宕机,上次是另有原因,这次真碰到一个案例,而且是在重要的环境上,希望大家引以为戒。 数据库是基于Linux6...

35650
来自专栏乐沙弥的世界

关于undo表空间配置错误的ORA-30012

      undo表空间是Oracle体系结构的重要组成部分,为什么我们可以回滚,就是因为有它。数据库任意数据的修改都会在undo表空间里生成前镜像,一是可以...

8510

扫码关注云+社区

领取腾讯云代金券