2024年5月6日发(作者:)
关于DB2数据库问题故障分析
案例一、
故障时间:2011-5-9
完成时间:2011-5-10
故障
LINUX文件系统损坏,
进不了系统
原因及错误代码
断电,会导致文件系统发生坏块,
linux系统在引导时,有一个磁盘
检查修复的机制,出现坏块的话,
就会报错以对话的形式停下来,
与你交互。
解决方案
修复文件坏块:
LINUX分区有二种格式:ext2和ext3,针对不
同的文件系统有以下两条命令进行修复:
Ext2:
#e2fsck –y –t ext3 /dev/VolGroup00/LogVol00
Ext3:
#fsck –y –t ext3 /dev/VolGroup00/LogVol00
临时表空间在数据库下面一般建一个就可以
了,我们建了好几个,可能是考虑到I/O效率
吧,但这不重要,这个表空间内的数据,一般
是临时存放的一些数据指针之类东东,挂起的
话,可以删掉重建。
一、表空间文件脱机
--显示表空间脱机状态
db2 list tablespaces show detail
主要看输出的状态及文件类型,注:我这里处理
系统和临时表空间脱机及损坏重建
备注
这种修复过程完全默认对话,
也就是说任何系统修复提示,
默认YES修复大多数的文件
损坏,非专业人士很难在修复
进程中,叛断那个地方有问
题,但修复的结果,表面上是
令人满意的。
DB2表空间脱机挂起,
连接数据库报错
文件系统损坏及其它操作
SQL0290N 不允许访问表空间。
SQLSTATE=55039 或者提示相
关表空间错误
DB2数据库分几种表空间:
系统表空间、临时表空间、缓
存区表空间。我这里写的是针
对临时表空间的,其它表空间
的恢复机制,请查阅相关文档
--修改表空间为在线
1.
db2 alter tablespace SYSCATSPACE switch
online
二、重建临时及系统表空间
----创建BUFFER
db2 "create bufferpool ker pagesize 8k
'/home/db2inst1/' "
DB20000I The SQL command completed
successfully.
-----创建系统临时表空间并指定BUFFER
db2 "create system temporary tablespace temp
pagesize 8k bufferpool zy"
DB20000I The SQL command completed
successfully.
----创建用户临时表空间
db2 "create USER temporary tablespace
ORCLSP_USER_TMP pagesize 8k managed by
system using ('/home/db2inst1/temp')"


发布评论