用作业实现自动备份MSSQL数据库到远程服务器
--此代码实现SQL数据库远程备份,放到作业里面执行可以自动备份数据库、自动删除@keepNDays天前备份。
--此代码将本地所有的用户数据库备份到共享目录“\\backupServerIp\ShareName\数据库备份”下。
--并删除天前的备份文件。要备份成功必须能够对共享目录有操作权限!
sp_configure 'xp_cmdshell',1
GO
RECONFIGURE
GO
--创建映射
execmaster..xp_cmdshell 'net use T: \\backupServerIp\ShareName "password" /user:uonun',NO_OUTPUT
GO
declare@keepNDays int,@s nvarchar(max),@del nvarchar(max)
select @keepNDays = 30,@backupSql='',@delSql=''
select
@backupSql=@backupSql+
char(13)+'DBCC SHRINKDATABASE(N'''+Name+''', 10, TRUNCATEONLY)'+ --收缩数据库
char(13)+'backup database '+quotename(Name)+' to disk =''T:\数据库备份\'+Name+'_'+convert(varchar(8),getdate(),112)+'.bak'' with init', --备份数据库
@delSql=@delSql+
char(13)+'exec master..xp_cmdshell '' del T:\数据库备份\'+Name+'_'+convert(varchar(8),getdate()-@keepNDays,112)+'.bak'', NO_OUTPUT' --删除过期备份
frommaster..sysdatabases wheredbid>6 order bydbid asc --不备份系统数据库(sql 2008),如果是Sql 2000,则为“dbid>6”。
exec(@del)
exec(@s)
GO
--删除映射
execmaster..xp_cmdshell 'net use T: /delete', NO_OUTPUT
GO
sp_configure 'xp_cmdshell',0
GO
RECONFIGURE
GO
相关文档:
/******************************************************************************/
/*
主流数据库MYSQL/MSSQL/ORACLE测试数据库脚本代码
脚本任务:建立4个表,添加主键,外键,插入数据,建立视图
运行环境1:microsoft sqlserver 2000 查询分析器
运行环境2:mysql5.0 phpMyAdmin网页界面
运行环境3:oracle 9i SQL*P ......
/******************************************************************************/
/*
主流数据库MYSQL/MSSQL/ORACLE测试数据库脚本代码
脚本任务:建立4个表,添加主键,外键,插入数据,建立视图
运行环境1:microsoft sqlserver 2000 查询分析器
运行环境2:mysql5.0 phpMyAdmin网页界面
运行环境3:oracle 9i SQL*PLU ......
当数据服务器和Web服务器部署在不同的服务器上时,会用到分布式事务,需要对两个服务器的MSDTC进行配置。
打开“管理工具――组件服务”,以此打开“组件服务――计算机”,在“我的电脑”上点击右键。在MSDTC选项卡中,点击“安全配置”按钮。 ......
--字段添加说明
EXEC sp_addextendedproperty 'MS_Description', '要添加的说明', 'user', dbo, 'table', 表名, 'column', 列名
--删除字段说明
EXEC sp_dropextendedproperty 'MS_Description', 'user', dbo, 'table', 表名, 'column', 字段名
--查看字段说明
SELECT
[Table Name] = i_s.TAB ......