二、 常用参数配置
1、 Server级参数设置
常用的SERVER参数:
Max memory:最大内存,一般为系统内存的60-70%
Max online engines:引擎数,一般为CPU个数减1,1个CPU配1个,2个CPU可为1或2,考滤双核的情况。
Number of engines of startup:
Number of user connections:用户连接数
Number of lock:锁的数量,小型企业一般为5-10万,中型企业一般为20-30万
Number of devices:允许最多设备数
Number of open database:同一时间打开数据库最大数
Number of open indexes:同一时间打开索引最大数
Number of open objects:同一时间打开对象最大数
Procedure cache size:存储过程缓存,一般为100M-200M
Default data cache:默认数据缓存,一般为max memory的一半
Default network packet size:默认网络包大小,一般为512的倍数
Max network packet size:最大网络包大小
Stack size:为每个进程使用的执行堆栈的大小
目前我们系统里也用到了部分参数设置,如下图:
以上参数都存放在配置文件 $sybase/servername.cfg 中,记录服务器参数的所有信息。分为动态参数与静态参数两种:
动态参数为修改后立即起作用的参数
静态参数为修改后需要重新启动服务才起作用的参数
SYBASE启动adaptive server时,首先会按照配置文件的设置分配资源,然后备份配置文件为servername.bak,将上次备份的文件复盖掉
2、 Database级参数设置
常用数据库选项如下:
Allow nulls by default:可以将数据库中表的列的缺省值由NOT NULL改为NULL
Auto identity:指定该参数后,可以表中未指定主键、唯一索引、identity列的情况下,自动为表创建一个identity列。
Dbo use only:选中后,只有数据库所有者可以操作数据库,其它用户为只读
Ddl in tran:可指定用户在事务中执行数据操作语言(DDL)
Indentity in nouninque index:可以使在逻辑上表中非唯一的索引在内部唯一,前提是表中必须有identity列,可与auto identity选项结合使用。
Read only:数据库只读选项
Signle user:设置只能单用户访问,tempdb数据库除外。
Unique auto_indentity index:向表中添加一个具有唯一非聚集索引的identity列
Abort tran on log full:超出阈值时,如何处理正在运行的事务,如果选中,写入日志事务的查询将被注销,直到日志中的空间被释放,如果不选,则只能等到日志空间释放。
No chkpt on recovery:保留数据库最新副本
No free space acctg:禁止对非日志段执行可用空间计数与阈值操作
Select into/bulkcopy/pllsort:是否允许此操作。
Trunk log on chkpt:控制事务日志在执行checkpoint操作时,是否截断日志。
3、 内存管理
内存管理中的几个概念:
数据缓存:属于adaptive server 内存的一部分,用于存放正在执行的数据页、索引、日志页
过程缓存:属于adaptive server 内存的一部分,用于存放正在使用的查询计划
MRU-LRU链:缓存中的页横穿MRU-LRU链,从最近最多被使用的页(MRU)到最近最少被使用的页(LRU)转储
自旋锁竞争:当adaptive server配置多个引擎时,自旋锁对缓存散列表的同步访问,对于高吞吐量的OLTP操作,会严重影响性能
可通过自定义命名缓存提升系统性能,好处如下:
使用命名缓存,可以绑定热点对象到专用的内存区,可降低物料I/0和使对象驻留在内存中,不太频繁使用的对象可保存在缺省的数据缓存中,因为里面已经不包含热点表了
使用命名缓存,可减少对缺省数据缓存的自旋锁竞争,因为每个命名缓存都有自己的缓存散列表,
创建命名缓存:
Sp_cacheconfig cachename ,20M
检查命名缓存的配置与绑定:
Sp_helpcache
修改命名缓存为只适用于日志的缓存:
Sp_cacheconfig cacehname,logonly
绑定和解绑对象到命名缓存:
Sp_bindcache “cachename”,”dbname”,”tbname”
Sp_unbindcache “dbname”,”tbname”
Sp_unbindcache_all “cachename”
删除命名缓存:
Sp_cacheconfig “cachename”,”0”
Log io 的设置可以提高吞吐量
Sp_logiosize
创建缓冲池:
Sp_poolconfig cachename,”4M”,”4K”
修改缓冲池:
Sp_poolconfig cachename,”5M”,”4K”,”16K”
删除缓冲池:
Sp_poolconfig cachename,”0”,”16K”
白天图生存、晚上求发展
天地间有种东西叫雪,从天而降,落地而化;
人世间有种东西叫爱,自吸引中诞生,升华中融合;
朋友中有一个你,识于偶然,止于永久;
M S N :gaoweidong_gwd@hotmail.com
E-mail:gaowd@itpub.net
BLOG :[url]http://gaowd.itpub.net[/url]
[URL=http://www.itpub.net/forum109.html][color=blue][b]欢迎到国内ERP产品版块[/b][/color] [/URL]