请问怎么去找sybase的事务日志,最好详细点

解决方案 »

  1.   

    监控事务日志的使用情况 
    1.sp_spaceused syslogs 
    2.select data_pgs(8,doampg) from sysindexes where id=8 
        这是判断日志满的程度的最快的方法,但可能的误差最多达16页 
    3.DBCC checktable(syslogs) 
        这个命令检查指针,对页面计数,得到已用日志窨的数量及自由窨的百分比的报告,这个命令的日志必须在自己的段上凡开销很大应在系统不忙的时候使用 4.sp_helpdb dbname .
        使用阀值原理 
            可以使用阀值管理,在日成快满时自动通知用户,也可以在阀值管理中安排为超过革个阀值时自动控制转储日志 
    5.检查长时运行 的或"搁浅"的事务这些事务使日志不能被截断 
        *查找应用中是否存在最老的事务: 
        select L.name,P.spid,Pprogram_name,H.starttime from master.
        .sysprocesses P.master..syslogshold H,master.
        .syslogons where P.spid=H.spid and H.spid!-0 and P.suid=H.suid 
        *查找一个阻塞日志截断事务的名称和进程号: 
        select H.spid from master.
        .syslogshold H.sysindexes I where H.dbid=db_id() and H.id=8 and     H.page=I.first and H.spid!=0 
    6.sysdatabase 中 status 及status2 的各们含义: 
        STATUS: 
            4 (0XO4) select into/bulkcopy 
            8 (0xo8) trunc log on chkpt 
            16 (0x10) no chkpt on recovery 
            32 (0x20) database created with "for load" option or crashed 
            64 (0x40) database not recovered 
            256 (0x100) database suspect,not recovered,cannot be opened 
                        or used,can be dropped only with dbcc dbrepair 
            512 (0x200) ddl in tran 
            1024 (0x400) read only 
            2048 (0x800) dbl use only 
            4096 (0x1000) single user 
            8192 (0x2000) allow nulls by default 
            16384 (0x4000) dbname has changed 
        status2: 
            1 (0x0001) abort tran on log full 
            2 (0x0002) no free space acctg 
            4 (0x0004) auto identity 
            8 (0x0008) identity in ononunique index 
            16 (0x0010) database is offline 
            32 (0x0020) database is offline umtil recovery completes 
            32768 (ox8000) database does not have a dedicated log device 
            128 (ox80) pages suspect (ase 11.5 only) 
      

  2.   

    事务日志那个log文件在那个目录?