如何查看sqlserver日志的方法.docx
- 文档编号:9531776
- 上传时间:2023-02-05
- 格式:DOCX
- 页数:49
- 大小:52.59KB
如何查看sqlserver日志的方法.docx
《如何查看sqlserver日志的方法.docx》由会员分享,可在线阅读,更多相关《如何查看sqlserver日志的方法.docx(49页珍藏版)》请在冰豆网上搜索。
如何查看sqlserver日志的方法
如何查看sqlserver日志的方法
定期分析sqlserver日志是DBA很重要的任务,那如何才能查看sqlserver日志呢?
在SQLServer7.0和SQLServer2000中,可以用下面的命令查看:
DBCClog({dbid|dbname},[,type={0|1|2|3|4}])
参数:
Dbidordbname-任一数据库的ID或名字
type-输出结果的类型:
0-最少信息(operation,context,transactionid)
1-更多信息(plusflags,tags,rowlength)
2-非常详细的信息(plusobjectname,indexname,pageid,slotid)
3-每种操作的全部信息
4-每种操作的全部信息加上该事务的16进制信息
默认type=0
要查看MSATER数据库的事务日志可以用以下命令:
DBCClog(master)
释放日志空间
1.清空日志
DUMPTRANSACTION库名WITHNO_LOG
2.截断事务日志:
BACKUPLOG数据库名WITHNO_LOG
3.收缩数据库文件(如果不压缩,数据库的文件不会减小
企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件
--选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了
--选择数据文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了
也可以用SQL语句来完成
--收缩数据库
DBCCSHRINKDATABASE(客户资料)
--收缩指定数据文件,1是文件号,可以通过这个语句查询到:
select*fromsysfiles
DBCCSHRINKFILE
(1)
4.为了最大化的缩小日志文件(如果是sql7.0,这步只能在查询分析器中进行)
a.分离数据库:
企业管理器--服务器--数据库--右键--分离数据库
b.在我的电脑中删除LOG文件
c.附加数据库:
企业管理器--服务器--数据库--右键--附加数据库
此法将生成新的LOG,大小只有500多K
或用代码:
下面的示例分离pubs,然后将pubs中的一个文件附加到当前服务器。
a.分离
EXECsp_detach_db@dbname='pubs'
b.删除日志文件
c.再附加
EXECsp_attach_single_file_db@dbname='pubs',
@physname='c:
\ProgramFiles\MicrosoftSQLServer\MSSQL\Data\pubs.mdf'
5.为了以后能自动收缩,做如下设置:
企业管理器--服务器--右键数据库--属性--选项--选择"自动收缩"
--SQL语句设置方式:
EXECsp_dboption'数据库名','autoshrink','TRUE'
6.如果想以后不让它日志增长得太大
企业管理器--服务器--右键数据库--属性--事务日志
--将文件增长限制为xM(x是你允许的最大数据文件大小)
--SQL语句的设置方式:
alterdatabase数据库名modifyfile(name=逻辑文件名,maxsize=20)
特别注意:
请按步骤进行,未进行前面的步骤,请不要做后面的步骤
否则可能损坏你的数据库.
一般不建议做第4,6两步
第4步不安全,有可能损坏数据库或丢失数据
第6步如果日志达到上限,则以后的数据库处理会失败,在清理日志后才能恢复.
另外提供一种更简单的方法,建议大家使用。
更简单的方法:
1。
右建数据库属性窗口--故障还原模型--设为简单
2。
右建数据库所有任务--收缩数据库
3。
右建数据库属性窗口--故障还原模型--设为大容量日志记录
ASP制作显IP签名图片
--#includefile="conn.asp"-->
--#includefile="inc/config.asp"-->
<%Response.ContentType="image/gif"
ConnDatabase
Dimtempip,myipnumeber,sql,rs1
Dimcountry,city
tempip=ReqIP
tempip=Split(tempip,".")
ifUbound(tempip)=3then
Fori=0ToUbound(tempip)
tempip(i)=left(tempip(i),3)
ifisnumeric(tempip(i))then
tempip(i)=cint(tempip(i))
else
tempip(i)=0
endif
next
myipnumeber=tempip(0)*256*256*256+tempip
(1)*256*256+tempip
(2)*256+tempip(3)
EndIf
sql="selectcountry,cityfromDV_AddresswhereIP1<="&myipnumeber&"andIP2>="&myipnumeber
setrs1=conn.execute(sql)
ifnotrs1.eofThen
country=rs1(0)
city=rs1
(1)
Else
country="51Tiao.Com"
city=""
EndIf
rs1.close:
Setrs1=Nothing
CloseDatabase
DimLocalFile,TargetFile
LocalFile=Server.MapPath("Ip.gif")
DimJpeg
SetJpeg=Server.CreateObject("Persits.Jpeg")
If-2147221005=Errthen
Response.write"没有这个组件,请安装!
"'检查是否安装AspJpeg组件
Response.End()
EndIf
Jpeg.Open(LocalFile)'打开图片
Iferr.numberthen
Response.write"打开图片失败,请检查路径!
"
Response.End()
Endif
Dimaa
aa=Jpeg.Binary'将原始数据赋给aa
'=========加文字水印====
Jpeg.Canvas.Font.Color=&H000000'水印文字颜色
Jpeg.Canvas.Font.Family="宋体"'字体
Jpeg.Canvas.Font.Bold=False'是否加粗
Jpeg.Canvas.Font.Size=12'字体大小
Jpeg.Canvas.Font.ShadowColor=&Hffffff'阴影色彩
Jpeg.Canvas.Font.ShadowYOffset=1
Jpeg.Canvas.Font.ShadowXOffset=1
Jpeg.Canvas.Brush.Solid=False
Jpeg.Canvas.Font.Quality=4''输出质量
Jpeg.Canvas.PrintText30,30,"-------------------------------------"'水印位置及文字
Jpeg.Canvas.PrintText30,50," 你的IP:
"&ReqIP
Jpeg.Canvas.PrintText30,70," 你的位置:
"&country&""&city
Jpeg.Canvas.PrintText30,90," 操作系统:
"&ClientInfo(0)
Jpeg.Canvas.PrintText30,110," 浏览器:
"&RegExpFilter("Microsoft®",ClientInfo
(1),0,"")
Jpeg.Canvas.PrintText30,130,"-------------------------------------"
Jpeg.Canvas.PrintText30,145,"个性签名来自风易在线"
bb=Jpeg.Binary'将文字水印处理后的值赋给bb,这时,文字水印没有不透明度
'============调整文字透明度================
SetMyJpeg=Server.CreateObject("Persits.Jpeg")
MyJpeg.OpenBinaryaa
SetLogo=Server.CreateObject("Persits.Jpeg")
Logo.OpenBinarybb
MyJpeg.DrawImage0,0,Logo,0.9'0.3是透明度
cc=MyJpeg.Binary'将最终结果赋值给cc,这时也可以生成目标图片了
Response.BinaryWritecc'将二进输出给浏览器
setaa=nothing
setbb=nothing
setcc=nothing
Jpeg.close:
SetJpeg=Nothing
MyJpeg.Close:
SetMyJpeg=Nothing
Logo.Close:
SetLogo=Nothing
%>
'--------------------------------------------------
'File:
conn.asp
<%dimconn,dbpath,UserIP
subConnDatabase
OnErrorResumenext
setconn=server.createobject("adodb.connection")
DBPath=Server.MapPath("IP.MDB")
conn.Open"Provider=Microsoft.Jet.OLEDB.4.0;DataSource="&DBPath
IfErrThen
err.Clear
SetConn=Nothing
Response.Write"数据库正在更新中,请稍后再试!
"
Response.End
EndIf
EndSub
SubCloseDatabase
Conn.close
SetConn=Nothing
EndSub%>
'-------------------------------------------------
'File:
config.asp
<%
DimUser_Agent
User_Agent=Request.ServerVariables("HTTP_USER_AGENT")
'============================================
'获取客户端配置
'============================================
PublicFunctionClientInfo(sType)
IfsType=0Then
IfInStr(User_Agent,"Windows98")Then
ClientInfo="Windows98"
ElseIfInStr(User_Agent,"Win9x4.90")Then
ClientInfo="WindowsME"
ElseIfInStr(User_Agent,"WindowsNT5.0")Then
ClientInfo="Windows2000"
ElseIfInStr(User_Agent,"WindowsNT5.1")Then
ClientInfo="WindowsXP"
ElseIfInStr(User_Agent,"WindowsNT5.2")Then
ClientInfo="Windows2003"
ElseIfInStr(User_Agent,"WindowsNT")Then
ClientInfo="WindowsNT"
ElseIfInStr(User_Agent,"unix")orInStr(User_Agent,"Linux") orInStr(User_Agent,"SunOS") orInStr(User_Agent,"BSD")Then
ClientInfo="Unix&Linux"
Else
ClientInfo="Other"
EndIf
ElseIfsType=1Then
IfInStr(User_Agent,"MSIE7")Then
ClientInfo="Microsoft®InternetExplorer7.0"
ElseIfInStr(User_Agent,"MSIE6")Then
ClientInfo="Microsoft®InternetExplorer6.0"
ElseIfInStr(User_Agent,"MSIE5")Then
ClientInfo="Microsoft®InternetExplorer5.0"
ElseIfInStr(User_Agent,"MSIE4")Then
ClientInfo="Microsoft®InternetExplorer4.0"
ElseIfInStr(User_Agent,"Netscape")Then
ClientInfo="Netscape®"
ElseIfInStr(User_Agent,"Opera")Then
ClientInfo="Opera®"
Else
ClientInfo="Other"
EndIf
EndIf
EndFunction
'============================================
'按照指定的正则表达式替换字符
'============================================
PublicFunctionRegExpFilter(Patrn,Str,sType,ReplaceWith)
DimRegEx
SetRegEx=NewRegExp
IfsType=1Then
RegEx.Global=True
Else
RegEx.Global=False
EndIf
RegEx.Pattern=Patrn
RegEx.IgnoreCase=True
RegExpFilter=RegEx.Replace(Str,ReplaceWith)
EndFunction
PublicFunctionReqIP()
ReqIP=Request.ServerVariables("HTTP_X_FORWARDED_FOR")
IfReqIP=""orIsNull(ReqIP)ThenReqIP=Request.ServerVariables("REMOTE_ADDR")
EndFunction
%>
网站被上传木马(网站被黑)如何处理
有时会收到一些客户反映网站被黑,或被上传木马,当用户访问网站时就会下载病毒或者木马,杀毒软件弹出病毒的提示.这种情况是以下2种情况导致的.
第一种情况:
客户网站存在文件上传漏洞.导致黑客可以使用这漏洞,上传黑客文件.然后黑客可以对该用户网站所有文件进行任意修改,这种情况比较普遍.针对这种情况,用户需要找技术人员.检查出网站漏洞并彻底修复,并检查看网站是否还有黑客隐藏的恶意文件.
原因:
很多网站都需要使用到文件上传功能,例如很多网站需要发布产品图片等.文件上传功能本来应该具有严格的限定.例如:
只允许用户只能上传JPG,GIF等图片.但由于程序开发人员考虑不严谨,或者直接是调用一些通用的文件上传组件,导致没对文件上传进行严格的检查.
处理:
处理关键是要用户自己知道自己网站哪些地方使用到了文件上传功能.重点针对这个文件上传功能进行检查,同时针对网站所有文件进行检查,排查可疑信息.同时也利用网站日志,对文件被修改时间进行检查,
1)查到哪个文件被加入代码:
用户要查看自己网页代码.根据被加入代码的位置,确定到底是哪个页面被黑,一般黑客会去修改数据库连接文件或网站顶部/底部文件,因为这样修改后用户网站所有页面都会被附加代码.
2)查到被篡改文件后,使用Ftp查看文件最后被修改时间,例如Ftp里面查看到conn.asp文件被黑,最后修改时间是2008-2-2210:
34分,那么可以确定在2008-2-22日10:
34分这个时间有黑客使用他留下的黑客后门,篡改了你的conn.asp这个文件.到底是哪个文件?
可以使用网站日志查出来.在的虚拟主机管理里面.使用获取网站日志功能.获得到2008-2-20日的网站日志.由于日志记录和真实时间有8小时时间差,所以您要检查的时间是2:
34分左右.以下是一个日志记录案例.
2008-02-2202:
34:
16W3SVC23211.155.230.227GET/favicon.ico
2008-02-2202:
34:
29W3SVC23211.155.230.227GET/favicon.ico
2008-02-2202:
34:
29W3SVC23211.155.230.227POST/news/uppic/569853.asp
2008-02-2202:
36:
03W3SVC23211.155.230.227GET/prod_Detail.aspid=59
2008-02-2202:
38:
56W3SVC23211.155.230.227GET/prod_detail.aspid=63
用户可以根据日志判定/news/uppic/569853.asp这个文件应该是黑客上传的文件.
3)再重复2)步.查看569853.asp文件修改时间,再查出到底是哪个文件导致上传了569853.asp这个文件.查看到569853.asp文件修改时间是2008-02-2018:
58分,找到有问题的文件.结果追查到有问题的文件是uploadPic.inc.asp.
2008-02-2010:
57:
37W3SVC23211.155.230.227GET/prod_ListCategory.aspcid=18
2008-02-2010:
58:
03W3SVC23211.155.230.227POST/news/admin/uploadPic.inc.asp
2008-02-2011:
08:
43W3SVC23211.155.230.227GET/uploadpic/nike.jpg
4)就这样循环.最后可以查出是哪个文件有文件上传漏洞,要修复这些文件上传漏洞,并彻底检查网站代码,彻底删除黑客其他隐藏的黑客文件.
注意:
1)很多用户网站被黑后,只是将被串改的文件修正过来.或重新上传,这样是没多大作用.如果网站不修复漏洞.黑客可以很快再次利用这漏洞,对用户网站再次入侵.
2)网站漏洞的检查和修复需要一定的技术人员才能处理.用户需要先做好文件的备份.
第二种情况:
用户本地机器中毒了.修改了用户自己本地的网页文件.然后用户自己将这些网页文件上传到服务器空间上了.这种情况比较少.如是这种情况用户要先彻底检查自己网站.
1.这种病毒一般是搜索本地磁盘的文件,在网页文件的源代码中插入一段带有病毒的代码,而一般最常见的方式是插入一个iframe,然后将这个iframe的src属性指向到一个带有病毒的网址。
2.如何检测这种情况呢?
(1).浏览网站,右键查看源代码,在源代码里搜索iframe,看看有没有被插入了一些不是自己网站的页面,如果有,一般就是恶意代码。
(2).也是右键查看源代码,搜索"script"这个关键字,看看有没有被插入一些不是自己域名下的的脚本,如果有,并且不是自己放上去的,那很可能也有问题。
3.这种病毒怎么杀呢?
(1).有些人会说用查毒程序查过本地没有发现病毒,这就要看看本地的网站文件是否带有这些恶意代码,如果有,那基本上可以肯定你的机器是曾经中过毒的,这些病毒可能不是常驻内存的,并且有可能执行一次之后就将自己删除,所以用查毒程序查不出来是很正常的。
(2).就算这些病毒是常驻内存,杀毒程序也可能查不出来,因为这种病毒的原理很简单,其实
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 如何 查看 sqlserver 日志 方法