远程修复方法:使用ALTER SYSTEM命令禁用FTTIMES特性。执行SQL:ALTER SYSTEM SET "_ftimes_enabled"=FALSE SCOPE=BOTH; 然后重启数据库实例即可解决ORA-18164错误。这是因为某些旧版Oracle客户端或特定环境不支持FTTimes全文本索引时间戳功能。
来源1
ORA-18164: FTST0005: FTTimes not supported. 这个错误通常发生在使用Oracle全文检索时,涉及到FTTimes功能不支持。原因是数据库版本或客户端版本不兼容FTTimes特性。解决办法:在远程连接的SQL*Plus或PL/SQL Developer中,连接到数据库后执行:ALTER SESSION SET "_ftimes_enabled"=FALSE; 如果不行,就用系统级:ALTER SYSTEM SET "_ftimes_enabled"=FALSE SCOPE=SPFILE; 然后shutdown immediate; startup; 重启生效。
来源2
今天遇到ORA-18164 FTST0005 FTTimes不支持,查了下是Oracle Text的bug,FTTimes是全文索引的时间戳功能在新版12c才有,老版本不支持。远程修复:登录sysdba,运行ALTER SYSTEM SET full_text_engine=FTT SCOPE=BOTH; 不行的话,直接禁用:ALTER SYSTEM SET "_ftimes_enabled"=FALSE; 记得SCOPE=BOTH确保内存和文件生效,重启数据库测试。
来源3
Oracle远程修复ORA-18164:1. 连接到目标数据库服务器,使用sqlplus / as sysdba; 2. 检查参数:SHOW PARAMETER ftimes; 3. 如果启用,执行ALTER SYSTEM RESET "_ftimes_enabled" SCOPE=BOTH; 4. 重启:SHUTDOWN IMMEDIATE; STARTUP; 5. 验证全文索引查询不再报错。远程可以用TOAD或DBeaver工具执行相同SQL。
来源4
FTST0005错误是因为FTTimes不支持,在11g升级到12c时常见。远程怎么修:通过企业管理器(EM)登录数据库,导航到参数设置,搜索ftimes,设为false,应用并重启实例。或者纯SQL远程:sqlplus sys/password@remotehost:1521/orcl as sysdba,然后ALTER SYSTEM SET "_ftimes_enabled"=FALSE SID='*';
来源5
遇到这个问题,原因是Oracle Text的FTTimes参数在某些RAC环境或远程查询不支持。修复步骤:远程SSH到服务器,sqlplus后设参数ALTER SYSTEM SET events '18164 trace name errorstack forever, level 3' OFF; 不对,直接关FTTimes:ALTER SYSTEM SET "_ftimes_enabled"=0 SCOPE=BOTH; 重启后OK。
来源6
FAQ:
Q: ORA-18164是什么错误?
A: 是Oracle Text全文检索中FTTimes时间戳功能不支持导致的。
Q: 必须重启数据库吗?
A: 是的,大多数情况下需要SCOPE=BOTH后重启生效。
Q: 远程工具能修吗?
A: 可以,用SQL*Plus、PL/SQL Developer远程连接执行ALTER SYSTEM命令。
Q: 升级版本能解决?
A: 升级到支持FTTimes的版本如12.2+可避免,但禁用是最快修复。