现场描述:数据库服务器进行一次停机之后,重启数据库服务,无法对部分表进行插入,删除,改名等操作
报错信息为:-12803 Error in executing an access_method routine execution sequence
现场自述:在12点服务器关过机,后重启服务,出现部分表无法进行操作
排查过程:
1、查询$GBASEDBTDRI/tmp下有af文件,查看文件内容,文件产生时间都是服务器重启时间段,与sql报错无关
2、排查出现无法进行操作的表的表结构,发现表结构都存在clob,咨询应用,这部分表都用了全文索引,且现在全文索引不可用
3、查看online日志,发现sql报错时报错是关于bts的
4、onstat -g glo 看一下有没有bts vp
5、发现并没有bts vp ,手动加上vp ,onmode -p +2 bts之后恢复正常
6、应用方当初配置全文索引采用的是动态加载bts,onmode -p +2 bts,服务器重启后重启数据库服务导致没有bts vp,所以导致全文索引不可用,部份表无法操作,需要在$GBASEDBTDRI/etc/onconfig下加上 VPCLASS bts,num=2