1、官方对临时空间分配的计算方法:
TempSize = 14 MB + ceiling(PermSize / 8)
根据个人的运维经验,官方的计算方式比较适合于内存数据库大小在10~40GB比较合适,如果内存库分配较小或较大时建议做稍微调整。
当内存数据库分配小于10GB时,建议:TempSize = 200 MB + ceiling(PermSize / 8)
当内存数据库分配大于40GB时,建议根据应用需求将TempSize调整在5~6GB左右即可,分配太大只会浪费内存空间。
2、调整临时空间分配
TimesTen对临时空间的调整是比较麻烦的,需要重新将内存库卸载后修改sys.odbc.ini文件再重新装载才能有效。详细操作方式如下:
vi sys.odbc.ini
TempSize=64 ####修改TempSize参数的大小,值得庆幸的是TempSize是可以调大也可以调小的,该参数的单位是MB。
$ ttadmin -ramunload $DSN
Command> dssize m;
PERM_ALLOCATED_SIZE: 128
PERM_IN_USE_SIZE: 6.4296875
PERM_IN_USE_HIGH_WATER: 6.4296875
TEMP_ALLOCATED_SIZE: 64
TEMP_IN_USE_SIZE: 8.5068359375
TEMP_IN_USE_HIGH_WATER: 8.5693359375
$ ttadmin -ramload $DSN
操作非常简单,就是需要停止所
TempSize = 14 MB + ceiling(PermSize / 8)
根据个人的运维经验,官方的计算方式比较适合于内存数据库大小在10~40GB比较合适,如果内存库分配较小或较大时建议做稍微调整。
当内存数据库分配小于10GB时,建议:TempSize = 200 MB + ceiling(PermSize / 8)
当内存数据库分配大于40GB时,建议根据应用需求将TempSize调整在5~6GB左右即可,分配太大只会浪费内存空间。
2、调整临时空间分配
TimesTen对临时空间的调整是比较麻烦的,需要重新将内存库卸载后修改sys.odbc.ini文件再重新装载才能有效。详细操作方式如下:
vi sys.odbc.ini
TempSize=64 ####修改TempSize参数的大小,值得庆幸的是TempSize是可以调大也可以调小的,该参数的单位是MB。
$ ttadmin -ramunload $DSN
Command> dssize m;
PERM_ALLOCATED_SIZE: 128
PERM_IN_USE_SIZE: 6.4296875
PERM_IN_USE_HIGH_WATER: 6.4296875
TEMP_ALLOCATED_SIZE: 64
TEMP_IN_USE_SIZE: 8.5068359375
TEMP_IN_USE_HIGH_WATER: 8.5693359375
$ ttadmin -ramload $DSN
操作非常简单,就是需要停止所