sqlserver远程备份到linux,SQLServer2005实现远程数据库备份

本文介绍了如何在SQL Server 2005中启用xp_cmdshell扩展,其潜在的安全风险及实际应用场景,包括通过该存储过程进行网络映射和数据库备份。同时强调了禁用此功能以维护系统安全的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、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:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值