sp_logiosize ["default" | "<size>" | "all"]
default
如果大小为两个逻辑页的内存池可用于高速缓存中,则将当前数据库的日志 I/O 大小设置为 SAP ASE 服务器的缺省值(两个逻辑页)。否则,SAP ASE 服务器将该日志 I/O 大小设置为一个逻辑页。因为 default 是关键字,所以在指定此参数需使用引号。
<size>
是用于设置当前数据库的日志 I/O 的大小。其值是逻辑页大小的倍数,最大为该大小的 4 倍。必须用引号将该值引起来。
all
显示为按高速缓存名称分组的所有数据库配置的日志 I/O 大小。
显示为当前数据库配置的日志 I/O 大小:
sp_logiosize
The transaction log for database 'master' will use I/O size of 2 Kbytes.
更改当前数据库的日志 I/O 大小以使用 8K 内存池。如果数据库的事务日志被绑定到不具有 8K 内存池的高速缓存,则 SAP ASE 服务器返回一个错误消息,指示此类内存池不存在,并且当前日志 I/O 大小不更改:
sp_logiosize "8"
将当前数据库的日志 I/O 大小更改为 SAP ASE 服务器的缺省值(一个逻辑页大小)。如果对于内存池而言其逻辑页大小在事务日志使用的高速缓存中不存在,则 SAP ASE 服务器使用 2K 内存池:
sp_logiosize "default"
显示为所有数据库配置的日志 I/O 大小:
sp_logiosize "all"
Cache name: default data cache
Data base Log I/O Size
------------------------------ ------------
master 2 Kb
tempdb 2 Kb
model 2 Kb
sybsystemprocs 2 Kb
pubs3 2 Kb
pubtune 2 Kb
dbccdb 2 Kb
sybsyntax 2 Kb
使用 sp_logiosize 时,还存在一些其它注意事项:
如果大小为两个逻辑页的内存池可用于高速缓存中,则 SAP ASE 服务器将数据库的缺省日志 I/O 大小定义为两个逻辑页。否则,SAP ASE 服务器将日志 I/O 大小设置为一个逻辑页(一个逻辑页的内存池在任何高速缓存中都始终存在)。对于大多数工作负荷,两个逻辑页的日志 I/O 大小的执行效果要比一个逻辑页的日志 I/O 大小的执行效果好得多,因此事务日志使用的每一高速缓存都应具有该逻辑页大小的内存池。
例如,在一个 2K 服务器上,假定只有两个数据库将其事务日志绑定到包含 2K、4K 和 8K 内存池的“仅日志”高速缓存上。缺省情况下,sp_logiosize 按 4K 设置这些参数的日志 I/O 大小,并且不使用 8K 内存池。因此,为避免浪费高速缓存空间,配置日志 I/O 大小时应十分小心。