加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

SqlServer 之 sp_config 存储过程

发布时间:2020-12-12 14:53:53 所属栏目:MsSql教程 来源:网络整理
导读:???MSSQL2005远程备份数据库 收藏 原理:添加网络驱动器映射,将备份文件备份到远程目标,最后删除网络驱动器映射。 ? ? ? xp_cmdshell 扩展存储过程将命令字符串作为操作系统命令 shell 执行,并以文本行的形式返回所有输出。由于xp_cmdshell 可以执行任何

???MSSQL2005远程备份数据库 收藏

原理:添加网络驱动器映射,将备份文件备份到远程目标,最后删除网络驱动器映射。 ? ? ? xp_cmdshell 扩展存储过程将命令字符串作为操作系统命令 shell 执行,并以文本行的形式返回所有输出。由于xp_cmdshell 可以执行任何操作系统命令,所以一旦SQL Server管理员帐号(如sa)被攻破,那么攻击者就可以利用xp_cmdshell 在SQL Server中执行操作系统命令,如:创建系统管理员,也就意味着系统的最高权限已在别人的掌控之中。由于存在安全隐患,所以在SQL Server 2005中, xp_cmdshell 默认是关闭的。 ? ? ? sp_configure存储过程用于显示或更改当前服务器的全局配置设置。 ? 操作步骤: ? 1.执行net share sharename=driver:directory /unlimited,共享目录 ? 2.将下面的文本保存在RemoteBackup.sql中,修改相应的目录及数据库名称 ? --打开高级设置 EXEC sp_configure 'show advanced options',1 RECONFIGURE --打开xp_cmdshell扩展存储过程 EXEC sp_configure 'xp_cmdshell',1 RECONFIGURE ? ? ? ? declare @strdirname varchar(100) ? --目标文件名称 declare @RemotePathstr varchar(100) ? --远程路径名 declare @LocalPathstr varchar(100) ? ?--本机路径名 ? declare @DBName varchar(100) ?--待备份数据库名称 ? set @DBName='DutySystem' ? --设置待备份数据库名称 set @strdirname=@DBName+replace(substring(convert(varchar(20),getdate(),120),1,10),'-','') ? --设置备份文件名 set @RemotePathstr = 'z:'+@strdirname+'.bak' ? --设置远程备份保存目标 --添加网络驱动器映射 exec master..xp_cmdshell 'net use z: 备份机ip文件夹名(或盘符$) "password" /user:备份机ip登录身份(得拥有备份路径的写权限)' --实施备份 backup database @DBName to disk=@RemotePathstr --删除映射 exec master..xp_cmdshell 'net use z: /delete' ? --关闭xp_cmdshell扩展存储过程、高级设置 EXEC sp_configure 'xp_cmdshell',0 RECONFIGURE EXEC sp_configure 'show advanced options',0 RECONFIGURE ? 3.执行sqlcmd -S MSSQL服务器实例名,1433 -P 登陆名 -U 密码 -D master -i ?路径RemoteBackup.sql ? 4.net share backup /del,关闭目录的共享

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读