2016-10-11 9 views
1

OpenNMS - выпуск базы данных PostgreSQL/Javaдля Windows OpenNMS - PostgreSQL/Java выпуск базы данных

Я понимаю, что jicmp файлы не вызывает фатальные ошибки, но когда OpenNMS идет создать пользователя, там, кажется, исключение Java.

Неужели кто-нибудь с опытом знает, что вызывает это вообще?

ошибки сбрасывали с установщиком OpenNMS

- using SQL directory... C:\Program Files\OpenNMS\etc 
- using create.sql... C:\Program Files\OpenNMS\etc\create.sql 
* using 'postgres' as the PostgreSQL user for OpenNMS 
* using 'opennms' as the PostgreSQL database name for OpenNMS 
java.lang.reflect.InvocationTargetException 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:498) 
    at org.opennms.bootstrap.Bootstrap$4.run(Bootstrap.java:460) 
    at java.lang.Thread.run(Thread.java:745) 
Caused by: org.opennms.core.schema.MigrationException: an error occurred creating the OpenNMS user 
    at org.opennms.core.schema.Migrator.createUser(Migrator.java:339) 
    at org.opennms.core.schema.Migrator.prepareDatabase(Migrator.java:447) 
    at org.opennms.install.Installer.install(Installer.java:254) 
    at org.opennms.install.Installer.main(Installer.java:989) 
    ... 6 more 
Caused by: org.postgresql.util.PSQLException: ERROR: unrecognized role option "createuser" 
    Position: 54 
    at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2284) 
    at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2003) 
    at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:200) 
    at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:424) 
    at org.postgresql.jdbc.PgStatement.executeWithFlags(PgStatement.java:321) 
    at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:313) 
    at org.opennms.core.schema.Migrator.createUser(Migrator.java:337) 
    ... 9 more 
+0

Похоже, я опубликовал аналогичный вопрос, надеюсь, что мы сможем помочь вам http://stackoverflow.com/questions/40323583/opennms-win-server-installation-issues – cyris69

ответ

0

Если вы все еще интересно: база данных Postgres изменила команду CREATE USER. Аргумент CREATEUSER уже недействителен и его следует изменить на CREATEROLE. Это должно быть сделано в файле create.sql, где он пытается создать пользователя.

У меня был подобный случай для OpenCMS в opencms\setup\database\postgresql\create_db.sql, где я изменил:

# 
# replacer = "${database}" 
############################ 

# Create the user; 

CREATE USER ${user} 
    PASSWORD '${password}' 
    CREATEDB CREATEUSER; 

#create the database 

CREATE DATABASE ${database} 
    WITH ENCODING='UNICODE' OWNER=${user}; 

#commit all (if connection is not autocommit) 
commit; 

для

# 
# replacer = "${database}" 
############################ 

# Create the user; 

CREATE USER ${user} 
    PASSWORD '${password}' 
    CREATEDB CREATEROLE; 

#create the database 

CREATE DATABASE ${database} 
    WITH ENCODING='UNICODE' OWNER=${user}; 

#commit all (if connection is not autocommit) 
commit; 

Это было после разархивации войны. Я перекрестил его, а затем он сработал.