PostgreSQL问题:无法访问文件“$libdir / plpgsql”:没有这样的文件或目录

我在Postgresql中得到这个异常:
org.postgresql.util.PsqlException: ERROR: Could not access file "$libdir/plpgsql": No such file or directory
    at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:1721)
    at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1489)
    at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:193)
    at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:452)
    at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:337)
    at org.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery(AbstractJdbc2Statement.java:236)
    at org.apache.commons.dbcp.DelegatingStatement.executeQuery(DelegatingStatement.java:205)

搜索了很多,大多数解决方案指向错误的安装.但这是我的测试数据库,它已经运行了很长时间没有问题.插入工作也正常.问题仅出现在选定查询中.

显然,您将Postgresql lib目录移到了原位.要确认这一点,请在psql中尝试以下操作:
> SET client_encoding TO iso88591;
ERROR:  Could not access file "$libdir/utf8_and_iso8859_1": No such file or directory

如果你收到这样的错误信息,那么我的理论是正确的.您需要找出这些文件的最终位置,或者您可以重新安装Postgresql来恢复它们.

要找出$libdir所指的内容,请运行以下命令:

pg_config --pkglibdir

对我来说,这会产生:

/usr/lib/postgresql

相关文章

项目需要,有个数据需要导入,拿到手一开始以为是mysql,结果...
本文小编为大家详细介绍“怎么查看PostgreSQL数据库中所有表...
错误现象问题原因这是在远程连接时pg_hba.conf文件没有配置正...
因本地资源有限,在公共测试环境搭建了PGsql环境,从数据库本...
wamp 环境 这个提示就是说你的版本低于10了。 先打印ph...
psycopg2.OperationalError: SSL SYSCALL error: EOF detect...