Sybase配置数据库参数
参数配置的两种方法:
sp_configure ‘参数名称’,参数值
修改参数文件(如:Sybase主机上的 %SYBASE%\servername.cfg)
配置Sybase数据库使用的最大内存
用isql命令行实用工具登录sybase数据库服务器,其中的servername是%SYBASE%\ini\sql.ini文件中配置的sybase服务器。
$ isql -Usa -P -Sservername
1>sp_configure ‘total memory’,614400 (单位为2k)
2>go
上面命令配置sybase使用1200M内存,通常配置为系统内存的60-70%。
配置sybase数据库所能适用的最大引擎数
sp_configure ‘max online engines’, 2
go
sp_configure “number of engines at startup”,2
go
若系统CPU数大于两个配置为系统实际CPU数减去1。
配置可用的最大用户连接数
根据license许可的用户连接数,配置ASE服务器同时允许的最大用户连接数。
sp_configure ‘Number of user connections’,50
go
配置可用锁的最大数量
sp_configure ‘number of locks’, 100000
go
按应用实际要求修改。如果执行大量的数据插入、更新、删除操作,可以考虑增加锁数量。
配置存储过程缓存数
存储过程缓存(procedure cache size)的大小可以配置为ASE最大内存的20%,也就是max memory的20%。此单位是2k。比如:max memory配置为4000M,则存储过程缓存可以配置为800M,800M= 409600(2K)
sp_configure "procedure cache size", 409600
go
配置可以打开的对象、索引、分区描述符的个数
sp_configure “number of open indexes”, 1000
go
sp_configure “number of open objects”, 1000
go
sp_configure “number of open partitions”, 1000
go
以上参数根据实际应用中表的个数而定。
配置创建表时字段默认允许为空
配置参数“allow nulls by default”控制在用户数据库内创建表时字段是否为空的属性默认允许为空。
use master
go
sp_dboption model,'allow nulls by default'
go
use model
go
checkpoint
go
修改服务器范围的锁模式为:数据行锁
sp_configure "lock scheme",0,datarows
go
修改默认数据缓存的大小
默认数据缓存(default data cache)的大小可以配置为ASE最大内存的50%,也就是max memory的50%。
sp_cacheconfig "default data cache",”1000m”
go
创建命令数据缓存并绑定到临时数据库和用户对象
请根据业务情况,为临时数据库和业务繁忙的表绑定命令高速缓存。
比如为tempdb绑定命名缓存:
sp_cacheconfig "tempdb_cache","10m"
go
use master
go
sp_bindcache tempdb_cache,tempdb
go
需要重启后,绑定到临时数据库的命令缓存才能生效。绑定命名缓存到用户对象的方法相同。
启用表分区功能参数
ASE数据库默认没有打开表分区的参数enable semantic partitioning,需要手动启用。此为动态参数。
sp_configure “enable semantic partitioning”,1
go
增加网络数据包的大小
控制ASE服务器发送和接收的网络数据包大小的参数有2个:max network packet size和default network packet size。都是静态参数,需要重启ASE服务器才能生效。
参数max network packet size限定了default network packet size所能配置的最大值。需要先调整参数max network packet size的大小,重启ASE服务器后,才能调整参数default network packet size的大小。
sp_configure “max network packet size”,4096
go
重启ASE服务器
sp_configure “default network packet size”,4096
go
配置临时数据库tempdb的选项
use master
go
sp_dboption tempdb,'select into',true
go
sp_dboption tempdb,'trunc log on chkpt',true
go
use tempdb
go
checkpoint
go
Sybase数据库服务器的一些配置参数值可以参考如下表格
参数名称 |
参数说明 |
参数值 |
max memory |
最大内存 |
2936012 (2K:5.6G) |
procedure cache size |
存储过程缓存 |
256000 (2K:500M) |
statement cache size |
语句缓存 |
102400(2K:200M) |
allocate max shared memory |
|
1 |
number of user connections |
最大用户连接数 |
2000 |
number of locks |
最大可用锁的数量 |
50000 |
number of devices |
最大可用设备数 |
100 |
number of open databases |
最大可用数据库数 |
50 |
number of open objects |
最大可同时打开数据库对象数 |
10000 |
number of open indexes |
最大可同时打开数据库索引数 |
10000 |
number of open partitions |
最大可同时打开对象分区数 |
10000 |
max online engines |
最大可用的引擎数 |
3 |
number of engines at startup |
启动时使用引擎数 |
3 |
global cache partition number |
服务器范围的缓存分区数 |
3 |
enable unicode conversions |
启用unicode字符集转化 |
0 |
enable literal autoparam |
启用语义自动参数化 |
1 |
disk i/o structures |
磁盘IO结构数 |
2048 |
enable semantic partitioning |
启用语义分区 |
1 |
max network packet size |
最大网络包大小 |
4096 |
default network packet size |
默认网络包大小 |
4096 |
size of unilib cache |
|
204800 |
recovery interval in minutes |
|
15 |