Prepared statement needs to be re-prepared 数据库交换空间已满

时间:2022-10-14 13:11:40
哪位大虾知道这个怎么解决?不能每次出现这个问题就重启数据库呀!就双击页面修改的时候偶尔会出现这个问题,报:SQLException: Prepared statement needs to be re-prepared
sql 语句这样的:
SELECT g.GUIDELINEID,g.NAME,g.COLLECTMODE,g.DATATYPEID,g.UNIT,g.MODELID,g.SOURCEGUIDELINEID,g.PURPOSE,g.GROUPNAME,g.GUIDELINETYPE,g.COLLECTTYPE,d.DISCOVERID,s.GUIDELINESNMPID,s.VALUEOID,s.DESCRIPTIONOID,s.STATEOID,s.SNMPVERSIONID,c.GUIDELINECMDID,c.VALUEFLAG as CMD_VALUEFLAG,c.CMDID,c.POSITION,c.IDENTIFY,c.SEPARATORS,c.RETURNFLAG,a.GUIDELINEAPIID,a.VALUEFLAG as API_VALUEFLAG,a.APITYPEID,m.GUIDELINESMISID,m.PROPERTY,m.SMISVERSIONID,f.GUIDELINEFILEID,f.FILETYPEID,f.KEYFLAG,f.VALUEFLAG as FILE_VALUEFLAG,f.UPDATETIMEFLAG,f.INSTANCEFLAG,f.VALUECELLFLAG,f.DATETIMEFORMAT 

FROM SYS_BIZ_GUIDELINE g LEFT JOIN SYS_MNG_MODEL_DISCOVER d ON g.GUIDELINEID=d.GUIDLINEID 
LEFT JOIN SYS_BIZ_GUIDELINE_SNMP s ON g.GUIDELINEID=s.GUIDELINEID 
LEFT JOIN SYS_BIZ_GUIDELINE_CMD c ON g.GUIDELINEID=c.GUIDELINEID LEFT JOIN SYS_BIZ_GUIDELINE_API a ON g.GUIDELINEID=a.GUIDELINEID 
LEFT JOIN SYS_BIZ_GUIDELINE_SMIS m ON g.GUIDELINEID=m.GUIDELINEID LEFT JOIN SYS_BIZ_GUIDELINE_FILE f ON g.GUIDELINEID=f.GUIDELINEID 
WHERE (g.GUIDELINEID = 'virtualDiskWritePolicy')
这条语句放在mysql里执行没问题

2 个解决方案

#1


该回复于2012-10-11 16:47:01被版主删除

#2


是mysql的变量值设置不合理引起的,调整以下这些变量的值:
SET GLOBAL table_open_cache=16384;
SET GLOBAL table_definition_cache=16384;

#1


该回复于2012-10-11 16:47:01被版主删除

#2


是mysql的变量值设置不合理引起的,调整以下这些变量的值:
SET GLOBAL table_open_cache=16384;
SET GLOBAL table_definition_cache=16384;