- 论坛徽章:
- 11
|
如下:
onspaces -c -b blobdbs -g 32 -p /home/informix/dbs/blobdbs -o 0 -s 48000
onspaces -c -d tmpdbs -t -p /home/informix/dbs/tmpdbs -o 0 -s 100000
onspaces -c -d phydbs -p /home/informix/dbs/phydbs -o 0 -s 50200
onspaces -c -d logdbs -p /home/informix/dbs/logdbs -o 0 -s 200000
以上的我都可以理解.而且和DB2的原理差不多.不过一个是CHUNK一个是所谓的容器.
echo "\nShut Down Server to Quiescent Mode..."
echo "====================================================="
onmode -s -y
这个语句我不知道是干什么的.使服务器处休眠吗? 类似于操作系统的safe模式吗?
没有使用过DB2,这里的quiescent模式,是informix的一个状态,此状态下,用户不能访问数据库..
sleep 5
echo "Adding Logical Log\n"
onparams -a -d logdbs -s 20000
onparams -a -d logdbs -s 20000
onparams -a -d logdbs -s 20000
onparams -a -d logdbs -s 20000
onparams -a -d logdbs -s 20000
onparams -a -d logdbs -s 20000
onparams -a -d logdbs -s 20000
onparams -a -d logdbs -s 20000
onparams -a -d logdbs -s 20000
onparams -a -d logdbs -s 10000
以上的是干什么的???
我的理解是空间已经存在,这样是告诉数据库,在logdbs空间里分配一部分给LOGIC log 用..以后写LLOG就写到这个空间.
请问是这样吗?
为什么要运行10次??
直接
onparams -a -d logdbs -s 190000
不行吗?
还有20000这个是怎么得出来吗,一定要这么大吗?
最后一个为什么又是10000了?
逻辑日志是循环使用的,如果只有一个的话,那么就不能进行循环使用....一个逻辑日志满了以后,数据库可以进行逻辑日志备份,太大的逻辑日志并不见得好..
到于为什么最后一个是10000,是因为最后一次不能分配20000的空间了.呵........(如果空间配置好的话,还是可以是20000的,比如增加逻辑日志空间时改为204000)
echo "\nArchiving Database Server Please Wait 20 seconds.\n"
echo "====================================================="
ontape -s
这里是备份的.后面不加级也行吗?那到底是多少级呢?
......
sleep 5
onmode -l
onmode -l
onmode -l
onmode -l
onmode -l
onmode -l
以上六个是干什么的?
我试过,没这几句,删除不了.INFORMIX说什么正在用.
我看网上说,这是向下一个LOGIC 日志转移,是这样吗?
但是,当前日志是哪个呢?从哪里看?
因为只有知道当前日志是哪个,以及它们的先后顺序,才能转到我们想让它去的地方.
使用onstat -l查看日志使用状态.
onmode -c
这个是校验.我在网上查到了.
sleep 10
echo "\nDrop the old Logical Log Files... \n"
echo "====================================================="
onparams -d -l 1 -y
onparams -d -l 2 -y
onparams -d -l 3 -y
onparams -d -l 4 -y
onparams -d -l 5 -y
onparams -d -l 6 -y
根据ID一一删除之.
echo "\nChange Physical Log Files, please wait about 1 minutes...\n"
echo "====================================================="
onparams -p -s 50000 -d phydbs -y
这个也是告诉数据库空间在这里,对吗?
对.并指定大小.
sleep 100
echo "\nNow add more dbspaces/chunks...\n"
echo "====================================================="
onspaces -c -d datadbs -p /home/informix/dbs/datadbs -o 0 -s 500000
echo "\nTake a level 0 archive.\n"
echo "====================================================="
ontape -s -L 0
是不是每指定一次日志空间所在,就要备份一次.那这次为什么又有那个-L 0了呢?
这个是正常的0级备份....对于空间的操作,都要求0级备份..
echo "\nReboot IDS...\n\n"
echo "====================================================="
onmode -ky
oninit
以上的类似于重启系统,这个能理解.
sleep 10
echo "\n====================================================="
echo "Well done! \n"
echo "====================================================="
最后修改onconfig.cs文件
DBSPACETEMP tmpdbs # Default temp dbspaces
onmode -ky
oninit
以上的问题,对各位高手可能很好笑,但是我的确是不知道干什么的..
而且,装之后,我还有一些问题.
装之后,我看onconfig里面 LOGFILES 改为4了(我自己加的,每个100M)
我记得原来是6的.INFORMIX会自己改自己的配置??
这个弄的我很困惑..
这个参数和上面那些onparams -a -d logdbs -s 20000有关系吗?
是不是加几次,后面LOGFILES就变成多少了?
但是,这样也说不通呀.配置里LOGSIZE没变.还是2000
然而,我自己加的时候是onparams -a -d logdbs -s 100000
请问它们之间到底是什么关系.
另外nstat -l里的东西是不是不准呀,或者是我没有操作成功.
[informix@localhost bin]$ onstat -l
Informix Dynamic Server Version 9.40.UC1E1 -- On-Line -- Up 00:36:03 -- 30952 Kbytes
Physical Logging
Buffer bufused bufsize numpages numwrits pages/io
P-1 0 16 0 0 0.00
phybegin physize phypos phyused %used
2:53 100000 0 0 0.00
Logical Logging
Buffer bufused bufsize numrecs numpages numwrits recs/pages pages/io
L-2 0 16 1 1 1 1.0 1.0
Subsystem numrecs Log Space used
OLDRSAM 1 36
address number flags uniqid begin size used %used
0x10f3e8a8 7 U---C-L 10 4:53 50000 12 0.02
0x10f3e8e8 8 U-B---- 6 4:50053 50000 1 0.00
0x10f3e928 9 U-B---- 7 5:3 50000 1 0.00
0x10f3e968 10 U-B---- 8 5:50003 50000 2 0.00
4 active, 4 total
我想问下为什么size是50000而不是我加的100000
???
对了,我加物理日志是200000上面也变成了100000
难道都是减半的?
另外,我还想问下.rootdbs大体上多少合适.
我本人认为这和DB2那些系统表差不多..SMS足够了..也不要太大.100M足够了.
是这样的吗?
PS:我觉得你还是得看看INFORMIX的基础知识........虽然从另一个数据库转到新数据库很多知识可以复用,但新数据库毕竟有自己的特点.... |
|