您好,登录后才能下订单哦!
这期内容当中小编将会给大家带来有关SQLServer中怎么实现远程数据库备份,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
一、xp_cmdshell的启用
xp_cmdshell 扩展存储过程将命令字符串作为操作系统命令 shell 执行,并以文本行的形式返回所有输出。由于xp_cmdshell 可以执行任何操作系统命令,所以一旦SQL Server管理员帐号(如sa)被攻破,那么***者就可以利用xp_cmdshell 在SQL Server中执行操作系统命令,如:创建系统管理员,也就意味着系统的最高权限已在别人的掌控之中。由于存在安全隐患,所以在SQL Server 2005中, xp_cmdshell 默认是关闭的。
两种方式启用xp_cmdshell
1.打开外围应用配置器—>
功能的外围应用配置器—>
实例名Database Enginexp_cmdshell—>
启用
2.sp_configure
-- 允许配置高级选项
EXEC sp_configure 'show advanced options', 1
GO
-- 重新配置
RECONFIGURE
GO
-- 启用xp_cmdshell
EXEC sp_configure 'xp_cmdshell', 0
GO
--重新配置
RECONFIGURE
GO
--执行想要的xp_cmdshell语句
Exec xp_cmdshell 'query user'
GO
--用完后,要记得将xp_cmdshell禁用(从安全角度安全考虑)
-- 允许配置高级选项
EXEC sp_configure 'show advanced options', 1
GO
-- 重新配置
RECONFIGURE
GO
-- 禁用xp_cmdshell
EXEC sp_configure 'xp_cmdshell', 1
GO
--重新配置
RECONFIGURE
二、开始备份
exec master..xp_cmdshell 'net use z: \\juwang\SQLBak 123456 /user:juwang\administrator'
//建立网络路径映射:网络路径,\\juwang\SQLBak;z:是映射网络路径对应本机的盘符;juwang是远程计算机的名称(也可写IP地址)。administrator是登录的用户名,123456是登录用户的密码(最好写成"123456")
backup database hjx to disk='e:\hjx_backup.bak ' with init
备份hjx数据库,with init 覆盖,noinit追加
exec master..xp_cmdshell 'copy e:\hjx_backup.bak z:'
复制hjx_backup.bak文件到z:
exec master..xp_cmdshell 'del e:\hjx_backup.bak '
删除本地备份文件
exec master..xp_cmdshell 'net use z: /delete'
删除网络映射盘z:
上述就是小编为大家分享的SQLServer中怎么实现远程数据库备份了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。