从hybris到mysql数据库的连接问题

时间:2017-12-08 11:40:57

标签: mysql database tomcat hybris

我正在尝试设置hybris但是当我尝试从CLI初始化时,由于Mysql连接问题,构建失败。 但是我可以使用mysql客户端从hybris节点连接到mysql数据库。

任何人都能帮助我吗?可能需要一些额外的特权吗?

以下是执行" ant初始化":

时最后抛出的错误
$(function() {
        $( document ).tooltip({
              items: '[title], [data-title]',
              track:true,
              content: function(){
                  var element = $( this );
                    if ( element.is( "[title]" ) ) {
                      return element.attr( "title" );
                    }
                    if ( element.is( "[data-title]" ) ) {
                      return element.attr( "data-title" );
                    }
              }
        });
});

完整错误日志

 [java] ERROR [main] [DataSourceImpl] error connecting to DataSource having url jdbc:mysql://<mysql-ip>:3306/hybrisdatabase?useConfigs=maxPerformance&characterEncoding=utf8&useSSL=false: Unknown error 1045

Hybris local.properties:

server:
     [echo] 
     [echo] Configuring server at /ABC/hybris/bin/platform/tomcat
     [echo] Using config set at /ABC/hybris/config/tomcat
     [echo]             
     [echo] copying from /ABC/hybris/config/tomcat to /ABC/hybris/bin/platform/tomcat
     [copy] Copying 9 files to /ABC/hybris/bin/platform/tomcat
     [copy] Copying 3 files to /ABC/hybris/bin/platform/tomcat
     [copy] Copying 2 files to /ABC/hybris/bin/platform/tomcat
     [copy] Copying 1 file to /ABC/hybris/bin/platform/tomcat/lib
     [echo] 
     [echo] Embedded server does not seem to be running (no PID found). No restart necessary.
     [echo]                         

initialize:
    [input] skipping input as property tenant has already been set.
     [java] ---------------------------------------------------------------
     [java] Warning: you're using at least one deprecated extension!
     [java] Please note that they may not be available in future releases.
     [java] 
     [java] Deprecated extensions: [liveeditaddon, sapcoreodata]
     [java] ---------------------------------------------------------------
     [java] ---------------------------------------------------------------
     [java] Warning: you're using at least one deprecated extension!
     [java] Please note that they may not be available in future releases.
     [java] 
     [java] Deprecated extensions: [liveeditaddon, sapcoreodata]
     [java] ---------------------------------------------------------------
     [java] Exception in thread "main" java.lang.reflect.InvocationTargetException
     [java]     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
     [java]     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
     [java]     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
     [java]     at java.lang.reflect.Method.invoke(Method.java:498)
     [java]     at de.hybris.bootstrap.loader.Loader.execute(Loader.java:142)
     [java]     at de.hybris.bootstrap.loader.Loader.main(Loader.java:118)
     [java] Caused by: java.lang.RuntimeException: java.sql.SQLException: Unknown error 1045
     [java]     at de.hybris.platform.jdbcwrapper.DataSourceImpl.adjustDatabaseInfos(DataSourceImpl.java:647)
     [java]     at de.hybris.platform.jdbcwrapper.DataSourceImpl.<init>(DataSourceImpl.java:213)
     [java]     at de.hybris.platform.jdbcwrapper.DataSourceImpl.<init>(DataSourceImpl.java:149)
     [java]     at de.hybris.platform.core.DataSourceImplFactory.createDataSource(DataSourceImplFactory.java:51)
     [java]     at de.hybris.platform.core.AbstractTenant$HybrisDataSourceBuilder.createMasterDataSource(AbstractTenant.java:2869)
     [java]     at de.hybris.platform.core.AbstractTenant$HybrisDataSourceBuilder.buildMasterDataSourceOnce(AbstractTenant.java:2631)
     [java]     at de.hybris.platform.core.AbstractTenant$HybrisDataSourceBuilder.build(AbstractTenant.java:2577)
     [java]     at de.hybris.platform.core.AbstractTenant.doInitializeSafe(AbstractTenant.java:329)
     [java]     at de.hybris.platform.core.AbstractTenant.doInitialize(AbstractTenant.java:308)
     [java]     at de.hybris.platform.core.AbstractTenant.doStartUp(AbstractTenant.java:674)
     [java]     at de.hybris.platform.core.Registry.assureTenantStarted(Registry.java:648)
     [java]     at de.hybris.platform.core.Registry.activateTenant(Registry.java:709)
     [java]     at de.hybris.platform.core.Registry.setCurrentTenant(Registry.java:556)
     [java]     at de.hybris.platform.core.Registry.activateMasterTenantForInit(Registry.java:625)
     [java]     at de.hybris.platform.util.ClientExecuter.execute(ClientExecuter.java:39)
     [java]     ... 6 more
     [java] Caused by: java.sql.SQLException: Unknown error 1045
     [java]     at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:964)
     [java]     at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3970)
     [java]     at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3906)
     [java]     at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:873)
     [java]     at com.mysql.jdbc.MysqlIO.proceedHandshakeWithPluggableAuthentication(MysqlIO.java:1710)
     [java]     at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1226)
     [java]     at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2253)
     [java]     at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2284)
     [java]     at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2083)
     [java]     at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:806)
     [java]     at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47)
     [java]     at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
     [java]     at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
     [java]     at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
     [java]     at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
     [java]     at com.mysql.jdbc.Util.handleNewInstance(Util.java:425)
     [java]     at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:410)
     [java]     at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:328)
     [java]     at de.hybris.platform.jdbcwrapper.JDBCConnectionFactory.createRawSQLConnection(JDBCConnectionFactory.java:189)
     [java]     at de.hybris.platform.jdbcwrapper.JDBCConnectionFactory.createSQLConnection(JDBCConnectionFactory.java:220)
     [java]     at de.hybris.platform.jdbcwrapper.JDBCConnectionFactory.makeObject(JDBCConnectionFactory.java:109)
     [java]     at org.apache.commons.pool2.impl.GenericObjectPool.create(GenericObjectPool.java:868)
     [java]     at org.apache.commons.pool2.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:435)
     [java]     at org.apache.commons.pool2.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:363)
     [java]     at de.hybris.platform.jdbcwrapper.JDBCConnectionPool.borrowConnection(JDBCConnectionPool.java:113)
     [java]     at de.hybris.platform.jdbcwrapper.ConnectionErrorCheckingJDBCConnectionPool.borrowConnection(ConnectionErrorCheckingJDBCConnectionPool.java:97)
     [java]     at de.hybris.platform.jdbcwrapper.DataSourceImpl.adjustDatabaseInfos(DataSourceImpl.java:629)
     [java]     ... 20 more
     [java] ERROR [main] [DataSourceImpl] error connecting to DataSource having url jdbc:mysql://10.43.4.168:3306/hemdevhybris?useConfigs=maxPerformance&characterEncoding=utf8&useSSL=false: Unknown error 1045
     [java] shutting down hybris registry..

BUILD FAILED
/TK/hybris/bin/platform/build.xml:123: The following error occurred while executing this line:
/ABC/hybris/bin/platform/resources/ant/antmacros.xml:1021: The following error occurred while executing this line:
/ABC/hybris/bin/platform/resources/ant/platformadministration.xml:51: The following error occurred while executing this line:
/ABC/hybris/bin/platform/resources/ant/antmacros.xml:878: Java returned: 1

来自hybris节点的Mysql连接:

db.url=jdbc:mysql://<mysql-IP>:3306/hybrisdatabase?useConfigs=maxPerformance&characterEncoding=utf8&useSSL=false
db.driver=com.mysql.jdbc.Driver
db.username=hybris-user
db.password=*****
db.tableprefix=
mysql.optional.tabledefs=CHARSET=utf8 COLLATE=utf8_bin
mysql.tabletype=InnoDB

3 个答案:

答案 0 :(得分:3)

创建Mysql密码时,请避免使用特殊字符,并在Hybris local.properties文件中正确提供相同的密码。 &#34; ant&#34;用于Hybris初始化的命令不能与MySql密码一起使用特殊字符,例如&#34; - ,+,#,:。&#34;。

答案 1 :(得分:0)

您是否将MySQL库复制到/ hybris / bin / platform / lib / dbdriver /? MySQL lib不附带标准hybris。

答案 2 :(得分:-1)

您的MySql Server需要运行,另外,您还需要将MySQL jar文件放在平台的lib文件夹中。