【发布时间】:2015-04-30 21:51:17
【问题描述】:
我一直在努力在 OpenSuse、Mageia 或 Manjaro 上的 Postgres(9.2、9.3 或 9.4)上安装 PL/Java...我不喜欢抱怨 - 但 PL/Java 文档很糟糕。而且我已经在 Google 上搜索了 2 周以上的安装帮助,但进展甚微……
有人知道如何完成这个安装吗?如果是这样,你能否用这个不言而喻的秘密来启发世界!
下面是一般形式:
- 安装 Oracle JRE/JDK
- 安装 PostgreSQL
- 安装PL/Java Dependencies
- 使用Maven打包PL/Java
- 尝试使用 install.sql 安装 PL/Java(+config 内容)
第 1-3 步有据可查且不言自明,第 4 步似乎很直接,但在第 5 步我似乎无法取得任何进展...
要安装/尝试过什么:
4 将 pljava.jar 和 pljava.so 文件(由 Maven 构建)移动到某个位置,例如:
/usr/lib/postgresql
5.1 创建一个 postgres.conf 文件,并将内容放在 /etc/ld.so.conf.d/ 中:
/usr/lib/jvm/jdk1.7.0_79/jre/lib
/usr/lib/jvm/jdk1.7.0_79/jre/lib/i386/server
5.2 更新 /usr/share/postgres93/data/ 中的 postgresql.conf 文件,添加以下内容:
pljava.classpath = '/usr/lib/postgresql/pljava.jar'
5.3 在数据库上运行 install.sql 脚本(比如说 postgres - 因为它存在 OOTB)
psql -d postgres -f /somelocation/install.sql
从我能找到的少量信息来看,这应该是所需要的,但是在执行 install.sql 时出现以下错误。
psql:/home/pljava/install.sql:6: ERROR: could not access file "pljava": No such file or directory
psql:/home/pljava/install.sql:8: ERROR: function sqlj.java_call_handler() does not exist
psql:/home/pljava/install.sql:12: ERROR: could not access file "pljava": No such file or directory
psql:/home/pljava/install.sql:14: ERROR: function sqlj.javau_call_handler() does not exist
CREATE TABLE
GRANT
CREATE TABLE
GRANT
CREATE TABLE
GRANT
CREATE TABLE
GRANT
CREATE TABLE
GRANT
psql:/home/pljava/install.sql:59: ERROR: language "java" does not exist
psql:/home/pljava/install.sql:63: ERROR: language "java" does not exist
psql:/home/pljava/install.sql:67: ERROR: language "java" does not exist
psql:/home/pljava/install.sql:71: ERROR: language "java" does not exist
psql:/home/pljava/install.sql:75: ERROR: language "java" does not exist
psql:/home/pljava/install.sql:79: ERROR: language "java" does not exist
psql:/home/pljava/install.sql:83: ERROR: language "java" does not exist
psql:/home/pljava/install.sql:87: ERROR: language "java" does not exist
psql:/home/pljava/install.sql:91: ERROR: language "java" does not exist
有什么想法吗?这看起来可能是 java 类路径问题?
【问题讨论】:
标签: postgresql pljava