Ofbiz: невозможно установить соединение с базой данных для helperName [localmysql]

Я использую Apache-ofbiz-13.07.03. Я создаю проект с помощью ant. Я изменил базу данных с помощью mysql. Когда я хочу загрузить начальные/демонстрационные данные или запустить ant, лог показывает ошибку.

*** Я использую mysql-connector-java-5.1.40-bin.jar для подключения jdbc

 [java] 2017-02-20 00:59:44,209 |OFBiz-config-2       |GenericDelegator              |I| Delegator "default" initializing helper "localmysql" for entity group "org.ofbiz".
 [java] 2017-02-20 00:59:44,209 |OFBiz-config-2       |GenericDelegator              |I| Doing database check as requested in entityengine.xml with addMissing=true
 [java] 2017-02-20 00:59:48,496 |OFBiz-config-2       |DatabaseUtil                  |E| Unable to establish a connection with the database for helperName [localmysql]... Error was: java.sql.SQLException: Unable to acquire a new connection from the pool


 [java] 2017-02-20 00:59:52,572 |main                 |GenericDelegator              |E| Failure in removeByCondition operation for entity [ServiceSemaphore]: org.ofbiz.entity.GenericDataSourceException: Generic Entity Exception occured in deleteByCondition (Unable to esablish a connection with the database. (Unable to acquire a new connection from the pool)). Rolling back transaction.
 [java] org.ofbiz.entity.GenericDataSourceException: Generic Entity Exception occured in deleteByCondition (Unable to esablish a connection with the database. (Unable to acquire a new connection from the pool))
 [java]     at org.ofbiz.entity.datasource.GenericDAO.deleteByCondition(GenericDAO.java:1202) ~[ofbiz-entity-test.jar:?]

[java] ... еще 22 [java] Причина: java.sql.SQLException: доступ запрещен для пользователя 'ofbiz'@'10.0.31.110' (используется пароль: YES) [java] в com.mysql.jdbc.SQLError .createSQLException(SQLError.java:964) ~[mysql-connector-java-5.1.40-bin.jar:5.1.40] [java] в com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3970) ~ [mysql-connector-java-5.1.40-bin.jar:5.1.40] [java] в com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3906) ~[mysql-connector-java-5.1.40 -bin.jar:5.1.40] [java] в com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:873) ~[mysql-connector-java-5.1.40-bin.jar:5.1.40]

мой entityengin.xm похож на

 <delegator name="default" entity-model-reader="main" entity-group-reader="main" entity-eca-reader="main" distributed-cache-clear-enabled="false">

     <group-map group-name="org.ofbiz" datasource-name="localmysql"/>
    <group-map group-name="org.ofbiz.olap" datasource-name="localmysqlolap"/>
    <group-map group-name="org.ofbiz.tenant" datasource-name="localmysqltenant"/>  

</delegator>

И мой раздел localmysql

где мой IP-адрес сервера 10.0.31.8

Я хочу поделиться тем, что могу успешно запустить этот проект на своем локальном компьютере без каких-либо проблем

<datasource name="localmysql"
        helper-class="org.ofbiz.entity.datasource.GenericHelperDAO"
        field-type-name="mysql"
        check-on-start="true"
        add-missing-on-start="true"
        check-pks-on-start="false"
        use-foreign-keys="true"
        join-style="ansi-no-parenthesis"
        alias-view-columns="false"
        drop-fk-use-foreign-key-keyword="true"
        table-type="InnoDB"
        character-set="latin1"
        collate="latin1_general_cs">
    <read-data reader-name="tenant"/>
    <read-data reader-name="seed"/>
    <read-data reader-name="seed-initial"/>
    <read-data reader-name="demo"/>
    <read-data reader-name="ext"/>
    <read-data reader-name="ext-test"/>
    <read-data reader-name="ext-demo"/>
    <inline-jdbc
            jdbc-driver="com.mysql.jdbc.Driver"
            jdbc-uri="jdbc:mysql://10.0.31.8/ofbiz?autoReconnect=true&amp;characterEncoding=UTF-8"
            jdbc-username="ofbiz"
            jdbc-password="ofbiz"
            isolation-level="ReadCommitted"
            pool-minsize="2"
            pool-maxsize="250"
            time-between-eviction-runs-millis="600000"/><!-- Please note that at least one person has experienced a problem with this value with MySQL
            and had to set it to -1 in order to avoid this issue.
            For more look at http://markmail.org/thread/5sivpykv7xkl66px and http://commons.apache.org/dbcp/configuration.html-->
    <!-- <jndi-jdbc jndi-server-name="localjndi" jndi-name="java:/MySqlDataSource" isolation-level="Serializable"/> -->
</datasource>

person naib khan    schedule 19.02.2017    source источник
comment
Пожалуйста, проверьте настройки пользователя и разрешений вашей базы данных. Пользователю ofbiz не разрешен доступ к вашей базе данных с IP 10.0.31.110, как видно из ошибок. Для дальнейшего изучения укажите соответствующие настройки entityengine.xml.   -  person Michael Brohl    schedule 20.02.2017
comment
@MichaelBrohl Я добавил свой код entityengin.xml в последний раздел моего кода ... Я могу войти в свою базу данных mysql через «имя пользователя: ofbiz и передать: ofbiz через командное окно, когда я даю ofbiz предоставить все разрешения .. Большое спасибо   -  person naib khan    schedule 20.02.2017
comment
Возможный дубликат Java JDBC Access запрещен для пользователя   -  person Mark Rotteveel    schedule 20.02.2017
comment
никакая ссылка не решает мою проблему @MarkRotteveel   -  person naib khan    schedule 22.02.2017
comment
В основном это означает, что OFBiz не может общаться с базой данных. Если вы используете более старую версию OFBiz, это может быть связано с проблемой с пулом соединений, и лучшим решением будет время от времени перезапускать OFBiz. Если это всегда происходит, то это может быть проблема с конфигурацией, когда база данных настроена неправильно. Если это работало и только начало происходить, попробуйте перезапустить OFBiz и базу данных (перед запуском OFBiz убедитесь, что база данных работает).   -  person Nitesh Goyal    schedule 22.02.2017


Ответы (2)


Пожалуйста, проверьте, правильно ли настроен файл entityengine.xml. Вы можете найти файл по адресу -

/framework/entity/config/entityengine.xml

Убедитесь, что вы выполнили следующие шаги:

  1. Создайте базы данных с именами ofbiz, ofbizolap и ofbiztenant в mysql.
  2. Перейдите в framework/entity/config/entityengine.xml и измените его, как показано ниже.

    <group-map group-name="org.ofbiz" datasource-name="localmysql"/>
    <group-map group-name="org.ofbiz.olap" datasource-name="localmysqlolap"/>
    <group-map group-name="org.ofbiz.tenant" datasource-name="localmysqltenant"/>
    

    <group-map group-name="org.ofbiz" datasource-name="localmysql"/>
    <group-map group-name="org.ofbiz.olap" datasource-name="localmysqlolap"/>
    <group-map group-name="org.ofbiz.tenant" datasource-name="localmysqltenant"/>
    

    <group-map group-name="org.ofbiz" datasource-name="localmysql"/>
    <group-map group-name="org.ofbiz.olap" datasource-name="localmysqlolap"/>
    <group-map group-name="org.ofbiz.tenant" datasource-name="localmysqltenant"/>
    

и в источнике данных localmysql, localmysqlolap, localmysqltenant измените следующие атрибуты:

jdbc-username="ваше имя пользователя mysql"

jdbc-password="ваш пароль пользователя mysql"

Надеюсь, это поможет (Y)

person Nitesh Goyal    schedule 21.02.2017
comment
jdbc-имя пользователя и пароль верны. Я много раз проверял это имя пользователя и пароль. большое спасибо @Nitesh - person naib khan; 22.02.2017
comment
В основном это означает, что OFBiz не может общаться с базой данных. Если вы используете более старую версию OFBiz, это может быть связано с проблемой с пулом соединений, и лучшим решением будет время от времени перезапускать OFBiz. Если это всегда происходит, то это может быть проблема с конфигурацией, когда база данных настроена неправильно. Если это работало и только начало происходить, попробуйте перезапустить OFBiz и базу данных (перед запуском OFBiz убедитесь, что база данных работает). - person Nitesh Goyal; 22.02.2017

Наконец я могу узнать свою проблему, и я могу решить свою проблему.

jdbc-uri="jdbc:mysql://localhost/ofbiz?autoReconnect=true&amp;characterEncoding=UTF-8"

это все об этой линии. Всякий раз, когда я создавал схему своей базы данных, я устанавливал набор символов по умолчанию в другой формат, а не в UTF-8.

теперь я могу подключить свою базу данных. Большое спасибо всем вам

person naib khan    schedule 22.02.2017