在生产模式下运行播放框架时出错



我在从dist运行生产时遇到了一个错误,但它在相同的系统中使用开发模式和相同的DB。

sudo ./sampleapp -Dhttp.port=9010  -J-Xms128M -J-Xmx512m -J-server

密码:[info]application-正在为数据源"default"创建池[error]c.z.h.p.HikariPool-HikariPool-1-池初始化期间出现异常。com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:拒绝用户"@'localhost'访问数据库"arisetc_ftalent"在sun.reflect.NativeConstructorAccessorImpl.newInstance0(本机方法)在sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessor Impl.java:62)在sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessor Impl.java:45)位于java.lang.reflect.Constructure.newInstance(Constructor.java:423)网址:com.mysql.jdbc.Util.handleNewInstance(Util.java:411)网址:com.mysql.jdbc.Util.getInstance(Util.java:386)在com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1052)网址:com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3609)网址:com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3541)网址:com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:943)[info]application-正在为数据源"default"创建池[error]c.z.h.p.HikariPool-HikariPool-2-池初始化期间出现异常。com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:拒绝用户"@'localhost'访问数据库"arisetc_ftalent"在sun.reflect.NativeConstructorAccessorImpl.newInstance0(本机方法)在sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessor Impl.java:62)在sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessor Impl.java:45)位于java.lang.reflect.Constructure.newInstance(Constructor.java:423)网址:com.mysql.jdbc.Util.handleNewInstance(Util.java:411)网址:com.mysql.jdbc.Util.getInstance(Util.java:386)在com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1052)网址:com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3609)网址:com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3541)网址:com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:943)糟糕,无法启动服务器。配置错误:配置错误[无法连接到数据库[默认值]]atplay.api.Configuration$.configError(Configuration.scala:155)atplay.api.Configuration.reportError(Configuration.scala:984)atplay.api.db.DefaultDBApi.$anonfun$connect$1(DefaultDBApi.scala:48)atplay.api.db.DefaultDBApi.$anonfun$connect$1$adapted(DefaultDBApi.scala:42)位于scala.collection.invariable.List.foreach(List.scala:389)at play.api.db.DefaultDBApi.connect(DefaultDBApi.scala:42)atplay.api.db.DBApiProvider.get$lzycompute(DBModule.scala:86)atplay.api.db.DBApiProvider.get(DBModule.scala:75)atplay.api.db.DBApiProvider.get(DBModule.scala:56)网址:com.google.inject.internal.ProviderInternalFactory.provision(ProviderInternalFactory.java:81)网址:com.google.inject.internal.BoundProviderFactory.provision(BoundProviderFactory.java:72)网址:com.google.inject.internal.ProviderInternalFactory.circularGet(ProviderInternalFactory.java:61)网址:com.google.inject.internal.BoundProviderFactory.get(BoundProviderFactory.java:62)网址:com.google.inject.internal.SingleParameterInjector.inject(SingleParameterInject.java:38)网址:com.google.inject.internal.SingleParameterInjector.getAll(SingleParameterInject.java:62)网址:com.google.inject.internal.ConstrutorInjector.production(ConstructorInjector.java:110)网址:com.google.inject.internal.ConstrutorInjecter.construct(ConstructorInjector.java:90)网址:com.google.inject.internal.CConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:268)网址:com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactordAdapter.java:46)网址:com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1092)网址:com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactordAdapter.java:40)网址:com.google.inject.internal.SingletoScope$1.get(SingletoScope.java:194)网址:com.google.inject.internal.InteralFactoryToProviderAdapter.get(InternalFactoryToPProviderAdapter.java:41)网址:com.google.inject.internal.FactoryProxy.get(FactoryProxy.java:56)网址:com.google.inject.internal.SingleFieldInjector.inject(SingleFieldInject.java:54)网址:com.google.inject.internal.MembersInjectorImpl.injectMembers(MembersInjectorImpl.java:132)网址:com.google.inject.internal.MembersInjectorImpl$1.call(MembersInjectorImpl.java:93)网址:com.google.inject.internal.MembersInjectorImpl$1.call(MembersInjectorImpl.java:80)网址:com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1092)网址:com.google.inject.internal.MembersInjectorImpl.injectAndNotify(MembersInjectorImpl.java:80)网址:com.google.inject.internal.MembersInjectorImpl.injectMembers(MembersInjectorImpl.java:62)网址:com.google.inject.internal.InjectorImpl.injectMembers(InjectorImpl.java:987)网址:com.google.inject.util.Providers$GuicifiedProviderWithDependencies.initialize(Providers.java:149)网址:com.google.inject.util.Providers$GuidifiedProviderWithDependencies$$FastClassByGuide$$2a7177aa.invoke()网址:com.google.inject.internal.SingleMethodInjector$1.ioke(SingleMethodInject.java:54)网址:com.google.inject.internal.SingleMethodInjector.inject(SingleMethodInject.java:89)网址:com.google.inject.internal.MembersInjectorImpl.injectMembers(MembersInjectorImpl.java:132)网址:com.google.inject.internal.MembersInjectorImpl$1.call(MembersInjectorImpl.java:93)网址:com.google.inject.internal.MembersInjectorImpl$1.call(MembersInjectorImpl.java:80)网址:com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1085)网址:com.google.inject.internal.MembersInjectorImpl.injectAndNotify(MembersInjectorImpl.java:80)在com.google.inject.internal.Initizer$InjectableReference.get(Initializer.java:223)网址:com.google.inject.internal.Initizer.injectAll(Initializer.java:132)网址:com.google.inject.internal.InteralInjectorCreator.injectDynamicly(InternalInjectorCreater.java:174)网址:com.google.inject.internal.InteralInjectorCreator.build(InternalInjectorCreater.java:110)网址:com.google.inject.Guice.createInjector(Guice.java:99)网址:com.google.inject.Guice.createInjector(Guice.java:84)atplay.api.inject.guice.GuiceBuilder.injector(GuiceInjectorBuilder.scala:185)正在播放.inject.guice.GuiceBuilder.injector(GuiceBuilder.java:221)在play.inject.guice.GuiceApplicationBuilder.build(GuiceApplicationBuildr.java:156)在模块上。LogSdtErrLoader.load(LogSdtEarLoader.java:29)atplay.api.ApplicationLoader$JavaApplicationLoaderAdapter$1.load(ApplicationLoader.scala:87)at play.core.server.ProdServerStart$.start(ProdServerStart.scala:50)at play.core.server.ProdServerStart$.main(ProdServerStart.scala:25)at play.core.server.ProdServerStart.main(ProdServerStart.scala)引起原因:配置错误:配置错误[初始化池失败:拒绝用户"@'localhost'访问数据库'arisetec_ftalent']atplay.api.Configuration$.configError(Configuration.scala:155)atplay.api.Configuration.reportError(Configuration.scala:984)atplay.api.db.HikariCPConnectionPool.create(HikariCModule.scala:63)atplay.api.db.PooledDatabase.createDataSource(Databases.scala:199)atplay.api.db.DefaultDatabase.dataSource$lzycompute(Databases.scala:123)atplay.api.db.DefaultDatabase.dataSource(Databases.scala:121)atplay.api.db.DefaultDatabase.getConnection(Databases.scala:142)atplay.api.db.DefaultDatabase.getConnection(Databases.scala:138)atplay.api.db.DefaultDBApi.$anonfun$connect$1(DefaultDBApi.scala:44)…还有52个由:com.zaxxer.hikari.pool.HikariPool$PoolInitializationException引起:失败要初始化池:拒绝用户"@'localhost'访问数据库'arisetec_ftalent'网址:com.zaxxer.hikari.pool.HikariPool.sthrowPoolInitializationException(HikariPool.java:543)网址:com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:535)网址:com.zaxxer.hikari.pool.HikariPool。(HikariPool.java:111)网址:com.zaxxer.hikari.HikariDataSource。(HikariDataSource.java:72)atplay.api.db.HikariCPConnectionPool.$anonfun$create$1(HikariCModule.scala:51)在scala.util.Try$.apply(Try.scala:209)atplay.api.db.HikariCPConnectionPool.create(HikariCModule.scala:47)…还有58引起原因:com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:Access拒绝用户"@'localhost'"访问数据库"arisetec_ftalent"在sun.reflect.NativeConstructorAccessorImpl.newInstance0(本机方法)在sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessor Impl.java:62)在sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessor Impl.java:45)位于java.lang.reflect.Constructure.newInstance(Constructor.java:423)网址:com.mysql.jdbc.Util.handleNewInstance(Util.java:411)网址:com.mysql.jdbc.Util.getInstance(Util.java:386)在com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1052)网址:com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3609)网址:com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3541)网址:com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:943)网址:com.mysql.jdbc.MysqlIO.secureAuth411(MysqlIO.java:4113)网址:com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1308)网址:com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2336)网址:com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2369)网址:com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2153)网址:com.mysql.jdbc.ConnectionImpl.(ConnectionImpl.java:792)网址:com.mysql.jdbc.JDBC4Connection.(JDBC4Cnnection.java:47)在sun.reflect.NativeConstructorAccessorImpl.newInstance0(本机方法)在sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessor Impl.java:62)在sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessor Impl.java:45)位于java.lang.reflect.Constructure.newInstance(Constructor.java:423)网址:com.mysql.jdbc.Util.handleNewInstance(Util.java:411)网址:com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:381)网址:com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:305)网址:com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:112)网址:com.zaxxer.hikari.pool.PoolBase.newConnection(PoolBase.java:358)网址:com.zaxxer.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:201)网址:com.zaxxer.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:443)网址:com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:514)…还有63个

生产环境中的数据库配置缺少数据库用户的用户名。仔细查看错误消息:

com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:拒绝用户"@'localhost'"访问数据库"arisetc_ftalent">

它说

拒绝用户访问''@'localhost'

用户名为空。请检查您的配置。

最新更新