sybase——tempdb空间不足导致数据库事务挂起

添加逻辑磁盘 disk init name="templog",physname="/opt/sybase/data/templog.dat",size=512000 增加日志的空间 alter database tempdb log on grs_logdev080228= 512000 sp_dboption tempdb,"trunc log on chkpt",true

1、创建命名高速缓存   sp_cacheconfig “tempdb_cache”,”100m”,”mixed” go 2、重新启动server 3、捆绑临时数据库到tempdb_cache高速缓存   sp_bindcache “tempdb_cache”, tempdb go -------------------------------------------------------- 建议先调整以下配置 sp_configure "max memory",1150000              //sybase占用2.3G内存 sp_configure "allocate max shared memory",1 sp_configure "user log cache size",4096        //用户日志缓存用来缓存客户段信息  sp_configure "procedure cache size",50000      //100M存储过程缓存 sp_configure "number of worker processes",2

备份sybase主目录下的***.cfg

sp_cacheconfig "default data cache","1G"       //配置缺省数据缓存1G sp_cacheconfig "default data cache", "cache_partition = 2" reboot sybase服务

上述操作如无法启动sybase服务则可以将备份的***.cfg替换当前的配置文件,重新boot sybase服务

总结: sybase 12.5版本的配置通常为以下几项: lock scheme                  //锁模式,sybase推荐使用缺省(allpages),但是一些并发操作多的表(temp_telebill)要使用行锁(datarows),减少被锁现象 number of locks              //通常不需要配置太多的锁10万就够了 max memory                   //sybase服务能够使用的物理内存,通常配置成物理内存的70%~80%,上例内存是3G,配给sybase的为1G明显不合理 allocate max shared memory   //打开sybase占用内存的开关 number of open indexes       //通常2000,该值配置过低时会在日志中报该值不够,最终导致性能缓慢         number of open objects       //通常2000,该值配置过低时会在日志中报该值不够,最终导致性能缓慢 number of user connections   //用户连接数,根据实际需求来配置,盲目多配会浪费内存 procedure cache size         //存储过程缓存不要超过100M,用来缓存过程的编译代码。 number of open database      //打开的数据库个数,缺省是12个,数据库数目超过12个时要调整该值 number of devices            //数据库的设备数,缺省是10,通常是不够的,需要调整 user log cache size          //日志缓存用来保留客户端连接信息的,每个连接都会生成一个user log cache size大小的cache,该值缺省为2K,主机内存充裕时可以配成4K。

在12.5及以后的版本中都要手工的配置default data cache,缺省为8M,几乎所有的用户操作都是在这个缓存中进行的,如果不优化的话严重影响数据库性能。 优化的方法是把尽可能多的内存配置给default data cache ,即:'max memory'-'所有其他内存消耗(用户数,锁数等)'-‘少许预留内存’=default data cache。 sp_cacheconfig "default data cache","1G"       //配置缺省数据缓存1G sp_cacheconfig "default data cache", "cache_partition = 2"

关于cpu的配置 max online engines            //sybase 使用的cpu的个数        number of engines at startup  //激活cpu的个数  number of worker processes   //多cpu要打开相应工作进程数

----------------------------------------------------------------------

 

你可能感兴趣的:(sybase——tempdb空间不足导致数据库事务挂起)