三、管理Informix Online磁盘空间Online初始化时,自动建立了一个名为rootdbs的dbspace。该rootdbs存储Online的管理信息,包括物理日志、逻辑日志等。当你建立一个数据库或表时,如果不指定dbspace,作为缺省,该库或表建立在rootdbs中。所以,如果你想将库或表建立在某个dbspace中,...
显示全部
三、管理Informix Online磁盘空间
Online初始化时,自动建立了一个名为rootdbs的dbspace。该rootdbs存储Online的管理信息,包括物理日志、逻辑日志等。当你建立一个数据库或表时,如果不指定dbspace,作为缺省,该库或表建立在rootdbs中。所以,如果你想将库或表建立在某个dbspace中,则必须在SQL语句中指定dbspace名字。如数据库名为‘stores’,我们将这个数据库建立在‘workdbs’dbspace中,SQL语句如下:
create database stores in workdbs;
另外,建chunk或dbspace时,要指定原始磁盘设备名路径,所需磁盘空间大小,以及该块磁盘空间在原始磁盘设备中的偏移量。其中,偏移量非常关键,要小心设置,否则容易造成chunk块之间空间上的重叠与覆盖。
例如:假定原始磁盘设备/informixdbs1有500M空间,其中rootdbs用去前100M,如果要在/informixdbs1中建立一个新的chunk,偏移量应大于100M。
1.用onspaces命令建立dbspace
$onspaces -c -d dbspace名字 -p 磁盘设备 -o 偏移量 -s 尺寸
其中:
-c: 表示建立新的dbspace
-d: dbspace名字
-p: 原始磁盘设备全路径名,如/informixdbs1
-o: 偏移量,以K字节为单位
-s: dbspace中第一个chunk 尺寸,以K字节为单位
2.用onspaces命令增加chunk
$onspaces -a dbspace名字 -p 原始磁盘设备 -o 偏移量 -s 尺寸
其中:
-a: 表示为某个dbspace增加一个chunk, 后跟dbspace名字
-p: 原始磁盘设备全路径名,如/informixdbs1
-o: 偏移量,以K字节为单位
-s: chunk的尺寸,以K字节为单位
例如某数据库系统,在原始磁盘设备/informixdbs1上建立三个DBSPACE:
rootdbs:Online初始化时缺省建立,第一个chunk尺寸为100M, 偏移量为0;
workdbs:存放应用数据库数据,第一个chunk尺寸为100M,偏移 量为100M;
tmpdbs:存放系统临时文件数据,第一个chunk尺寸为50M,偏移量为200M;
*tmpdbs必须在online初始化之前建立;
建立命令如下:
$onspaces -c -d workdbs -p /informixdbs1 -o 100000 -s 100000;
$onspaces -c -d tmpdbs -p /informixdbs1 -o 200000 -s 50000;
四、Informix Online日志管理
1.数据库日志方式:
◆无日志方式(对应非事物性应用)
◆无缓冲区日志方式
◆带缓冲区日志方式
◆符合ANSI标准日志方式
针对保险业务特点,INFORMIX建议使用无缓冲区日志方式建立数据库,以保证机器崩溃时,交易事务不会丢失,与带缓冲区日志方式相比,数据库并行处理速度慢。
可使用ontape命令修改数据库日志方式
用ontape打开事务日志:
$ontape -s -U stores; 打开数据库stores日志,日志方式为无缓冲区日志;
用ontape结束日志:
$ontape -N lifeins; 将数据库lifeins改为无日志方式。
2.物理日志的管理
物理日志保存数据被修改前的映象。物理日志的位置和大小可以改变。使用onparams命令改变物理日志的位置和大小,在Online进入静态方式后执行:
$ onparams -p -s size -d dbspace -y
其中
-p: 表示物理日志
-s: 新的尺寸,后跟以K字节为单位的物理日志的大小
-d: 说明存放物理日志的dbspace名字
-y: 对所有的提问以“Yes”回答
注意:分配给物理日志的空间必须是连续的,因此,改变之前要确认dbspace有足够的空间来存放物理日志。
3.逻辑日志的管理
逻辑日志保存数据在修改后的映象,逻辑日志空间的尺寸为逻辑日志文件尺寸与逻辑日志文件个数的乘积。Online初始化后,已有逻辑日志文件的尺寸不可修改,要改变逻辑日志空间大小,只能修改逻辑日志文件个数,新增加的逻辑日志文件尺寸可以设为新的值,逻辑日志文件个数不得少于3个。
a.用onparams 增加逻辑日志文件
$ onparams -a -d rootdbs
新增加的逻辑文件状态是A(A表示新增加的意思)。必须建立rootdbs的0级备份后,新增加的逻辑日志文件才可使用。
b.增加一个具有新的尺寸的逻辑日志文件
$onparams -a -d rootdbs -s新的日志尺寸
c.用onparams取消一个逻辑日志文件
$onparams -d -1 logid
注意:取消一个逻辑日志文件之前,必须做rootdbs的0级备份
$ ontape -s.; 该命令可做0级备份
* 只有状态为F(Free)或A(Added)的逻辑日志文件才可被取消
* 必须知道想要取消的逻辑日志的logid号
$ onstat -1; 该命令可查看逻辑日志文件状态及log id号
收起