<!--#include file="inc_const.asp"-->
<%response.expires=0
Response.CacheControl = "Private"
application.lock
set cschat=server.createobject("ffcschat.cssbchat")
my_level=cschat.getLevel(Session,Application(ConstStr & "_user_list"),Application(ConstStr & "_room_list"))
set cschat=nothing
application.unlock

if my_level-application( ConstStr & "_superlevel")<>0 then  response.end

action=request("action")

if action="backup" then
  copyfromfilepath = Server.MapPath("db/global.asa")
  copytofilepath = Server.MapPath("backup/global.asa")
  Set fs = CreateObject("Scripting.FileSystemObject")
  If fs.FileExists(copyfromfilepath) Then fs.CopyFile copyfromfilepath, copytofilepath, True
  Set fs = Nothing
  response.redirect("showerr.asp?errtext=备份成功！请用ftp下载backup目录下的global.asa文件！")
  response.end
elseif action="del" then
  copyfromfilepath = Server.MapPath("backup/global.asa")
  Set fs = CreateObject("Scripting.FileSystemObject")
  If fs.FileExists(copyfromfilepath) Then fs.DeleteFile copyfromfilepath, True
  Set fs = Nothing
  response.redirect("showerr.asp?errtext=成功删除backup目录下的global.asa备份文件！")
  response.end
elseif action="compact" then
  copyfromfilepath = Server.MapPath("backup/global.asa")
  copytofilepath = Server.MapPath("backup/temp.mdb")
  Set fs = CreateObject("Scripting.FileSystemObject")
  If fs.FileExists(copyfromfilepath) Then
    Set Engine = CreateObject("JRO.JetEngine")
    Engine.CompactDatabase "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & copyfromfilepath, _
      "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & copytofilepath
    fs.CopyFile copytofilepath,copyfromfilepath
    fs.DeleteFile(copytofilepath)
    Set Engine = nothing
    errText="压缩成功！请对压缩后的数据库做读<a href=dbreadtest.asp target=_blank>测试</a>！"
  Else
    errText= "在backup目录下没有找到global.asa，请先备份到此目录！"
  End If
  Set fs = nothing
  response.redirect("showerr.asp?errtext="&errText)
  response.end
elseif action="recover" then
  copyfromfilepath = Server.MapPath("backup/global.asa")
  copytofilepath = Server.MapPath("db/global.asa")
  Set fs = CreateObject("Scripting.FileSystemObject")
  If fs.FileExists(copyfromfilepath) Then fs.CopyFile copyfromfilepath, copytofilepath, True
  Set fs = Nothing
  response.redirect("showerr.asp?errtext=您用备份数据库覆盖了现数据库文件，请删除备份数据库文件！")
  response.end
end if
%>
<meta HTTP-EQUIV='Pragma' CONTENT='no-cache'><META content="text/html; charset=gb2312" http-equiv=content-type>
<link rel="stylesheet" type="text/css" href="chat.css">
<style>p{color:#000000;text-align:left;margin-left:10px;margin-right:20px;margin-top:10px;margin-bottom:0px}</style>
<body style="background-color:EAF2FF;color:112233;scrollbar-Base-Color: #b0d8ff;SCROLLBAR-DARKSHADOW-COLOR:#b0d8ff;SCROLLBAR-arrow-COLOR:#336699;SCROLLBAR-TRACK-COLOR: EAF2FF;SCROLLBAR-3DLIGHT-COLOR: #b0d8ff;SCROLLBAR-SHADOW-COLOR: #336699;SCROLLBAR-HIGHLIGHT-COLOR: #b0d8ff;" leftmargin=3 topmargin=3 >
  <table cellspacing=0 cellpadding=0 align=center width=100% height=100%>
  <tr><td valign=center>
  <table width=80% cellspacing=0 cellpadding=0 style="border:'1px solid navy'">
  <tr><td class=navy2>数据库压缩和修复处理</td></tr>
<tr><td><p>本聊天室使用 Microsoft Access 2000　数据库，当数据库中的记录删除时，并没有将该记录占用的字节数清除掉，因此运行一段时间后会发现数据库越来越大，对于某些记录经常性的反复改写，由于access数据库的稳定性原因，有可能造成记录读写错误，此时就需要进行数据库压缩和修复。压缩和修复的方法如下：</p>
<p><ol>
  <li>将当前数据库备份到 backup 目录下。　　<a href="dbcompact.asp?action=backup" onclick="return confirm('真的要备份数据库吗？')">【备份】</a></li>
  <li>用ＦＴＰ登录到服务器上，下载 backup 目录下的 global.asa（数据库）到本地硬盘[这是您的数据库的最原始的备份！]。</li>
  <li>服务器上直接压缩：需要服务器支持FSO权限且ACCESS驱动程序的兼容性。请压缩后检测数据库！　　<a href="dbcompact.asp?action=compact" onclick="return confirm('压缩数据库不一定成功，记得一定备份哟！')">【压缩】</a></li>
  <li>如果上一步在服务器上直接压缩不成功：<ol>
    <li>将下载下来的global.asa改名为global.mdb，启动 Microsoft Access 2000，使用菜单中的“工具”--&gt;“数据库实用工具”--&gt;“压缩和修复数据库”功能来压缩和修复数据库。</li>
    <li>将压缩后的global.mdb改名为global.asa，再用ＦＴＰ把压缩后的文件上传到 backup 目录下，覆盖掉原来的文件。</li></ol></li>
  <li>用压缩后或上传的 global.asa 覆盖旧的数据库。　　<a href="dbcompact.asp?action=recover" onclick="return confirm('真的要用备份数据库覆盖当前数据库吗？')">【覆盖】</a></li>
  <li>删除备份的数据库 global.asa，以防被他人下载。　　<a href="dbcompact.asp?action=del" onclick="return confirm('真的要删除备份的数据库吗？')">【删除】</a></li>
</ol>
</p></td></tr>
</table><br>[<a href='javascript:history.go(-1)'>后退</a>]</table></body></html>
























