一、命令详解
1. 将远程数据库数据导出到本地文件
EXEC master..xp_cmdshell 'bcp "sql查询语句" queryout 本地文件路径 -t"," -c -S服务器ip -U"用户名" -P"密码"'
注意:在本机上执行的命令最终文件未必备份到本机,文件备份到的目标主机由查询命令是建立在哪台主机所决定
二、注意
1. 在SqlServer2005中提示如下错误:
消息 15281,级别 16,状态 1,过程 xp_cmdshell,第 1 行SQL Server 阻止了对组件 'xp_cmdshell' 的 过程'sys.xp_cmdshell' 的访问,因为此组件已作为此服务器安全配置的一部分而被关闭。系统管理员可以通过使用 sp_configure 启用 'xp_cmdshell'。有关启用 'xp_cmdshell' 的详细信息,请参阅 SQL Server 联机丛书中的 "外围应用配置器"。
这是因为Sql Server默认未开启xp_cmdshell
BCP命令前加上如下命令即可解决
-- 允许配置高级选项EXEC sp_configure 'show advanced options', 1GO-- 重新配置RECONFIGUREGO-- 启用xp_cmdshellEXEC sp_configure 'xp_cmdshell', 1GO