无事,研究下IIS6的日志存储,发现可以使用ODBC,这个ODBC给我的印象可不太好,当年刚学VB时就被他给拦截住了,程序都没问题,一碰到ODBC就有问题就头疼,事情过去两年了,现在处理这个问题当然不像当初那么难了,这段时间也总是想实现自动化操作,这就是个例子,过程是这样的:
- 建IISLOG数据库
- 建ODBC数据源
这两个过程都计划用代码实现,过程我就不说了,先贴上代码:
IIS_LOG.sql
CREATE DATABASE IIS_LOG
ON
( NAME = IIS_LOG,
FILENAME = 'D:\IIS_LOG.mdf',
SIZE = 4,
MAXSIZE = 10,
FILEGROWTH = 1
)
GO
USE IIS_LOG
EXEC sp_addlogin 'IIS_LOG','IIS_LOGIIS_LOGIIS_LOG','IIS_LOG'
GO
EXEC sp_adduser 'IIS_LOG','IIS_LOG','db_owner'
GO
CREATE TABLE IIS_LOG
(
[ClientHost] varchar(255),
[Username] varchar(255),
[LogTime] datetime,
[Service] varchar(255),
[Machine] varchar(255),
[ServerIP] varchar(50),
[ProcessingTime] int,
[BytesRecvd] int,
[BytesSent] int,
[ServiceStatus] int,
[Win32Status] int,
[Operation] varchar(255),
[Target] varchar(255),
[Parameters] varchar(255),
)
GO
ODBC.REG
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\ODBC Data Sources]
"IIS_LOG"="SQL Server"
[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\IIS_LOG]
"Driver"="C:\\WINDOWS\\system32\\SQLSRV32.dll"
"Description"="IIS_LOG"
"Server"="seogirl"
"LastUser"="IIS_LOG"
"Database"="IIS_LOG"
Install.cmd
osql -E -i IIS_LOG.sql
regedit /s odbc.reg
OK,保存文件,运行Install.cmd,3秒钟完成,IISLOG的SQL Server数据库,表,及登录用户的创建,相关ODBC的设置。
下一步在IIS6里相关站点上右击--》属性--》网站--》活动日志格式--》“ODBC 日志记录”--》点属性--》ODBC 数据源名(DSN) ,表,用户名里都输入:IIS_LOG,密码里输入IIS_LOGIIS_LOGIIS_LOG。OK配置完成。
原创作者:柳永法(yongfa365)'Blog
引用本页地址:
http://www.yongfa365.com/item/IIS6-USE-ODBC-LOGS-SQL-Server-cmd-osql-reg-yongfa365.html