【发布时间】:2014-05-15 13:17:53
【问题描述】:
我一直在关注 Play Framework 的 Typesafe 在线培训(在网页设计方面我是一个完整的初学者),并且在我们应该连接到数据库的部分之前一切正常。
当我看到这个网站第二课的第二个视频时: https://typesafe.com/how/online-training/play-java
我遇到了问题,这是我尝试刷新浏览器时收到的错误消息:
Cannot connect to database [default]
In /Users/Arash/playconf/conf/application.conf at line 43.
40 db.default.driver=com.mysql.jdbc.Driver
41
# Here we add the database that we have created locally
43 db.default.url="jdbc:mysql://localhost:3306/playconf"
44
45 # We set this to root, we login as root with no password
46 db.default.user=root
这是我终端中的错误消息(运行播放)
[error] c.j.b.h.AbstractConnectionHook - 获取初始失败 连接休眠 0ms 并重试。剩余尝试次数:0。 异常:null.Message:未知数据库“playconf”[错误] 应用 -
! @6hmk31f56 - 内部服务器错误,用于 (GET) [/] ->
play.api.Configuration$$anon$1:配置错误[无法连接到 数据库 [默认]] 在 play.api.Configuration$.play$api$Configuration$$configError(Configuration.scala:92) ~[play_2.10.jar:2.2.2] 在 play.api.Configuration.reportError(Configuration.scala:570) ~[play_2.10.jar:2.2.2] 在 play.api.db.BoneCPPlugin$$anonfun$onStart$1.apply(DB.scala:252) ~[play-jdbc_2.10.jar:2.2.2] 在 play.api.db.BoneCPPlugin$$anonfun$onStart$1.apply(DB.scala:243) ~[play-jdbc_2.10.jar:2.2.2] 在 scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244) ~[scala-library.jar:na] 在 scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244) ~[scala-library.jar:na] 原因: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:未知 数据库“playconf”在 sun.reflect.NativeConstructorAccessorImpl.newInstance0(本机方法) ~[na:1.8.0] 在 sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[na:1.8.0] 在 sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[na:1.8.0] 在 java.lang.reflect.Constructor.newInstance(Constructor.java:408) ~[na:1.8.0] 在 com.mysql.jdbc.Util.handleNewInstance(Util.java:411) ~[mysql-connector-java-5.1.26.jar:na] 在 com.mysql.jdbc.Util.getInstance(Util.java:386) ~[mysql-connector-java-5.1.26.jar:na]
我已经尽可能准确地跟踪了所有内容,但是我收到了这个错误,并且我整天都被困在这里。很郁闷...
然后我想,哦,也许我没有mysql?于是我用自制软件安装了mysql,又试了一次,还是一样的错误。
这是我与数据库有关的代码:
在配置文件中:
# We add our sql driver, which we have added in the build.sbt file
# db.default.driver=org.h2.Driver # This is the original, commented out originally
db.default.driver=com.mysql.jdbc.Driver
# Here we add the database that we have created locally
db.default.url="jdbc:mysql://localhost:3306/playconf"
# We set this to root, we login as root with no password
db.default.user=root
在构建文件中:
libraryDependencies ++= Seq(
javaEbean,
"mysql" % "mysql-connector-java" % "5.1.26",
"org.webjars" %% "webjars-play" % "2.2.0",
"org.webjars" % "bootstrap" % "2.3.1")
好的,看来我必须创建数据库,现在我已经创建了,但我无法访问数据库。我收到 ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'playconf'
【问题讨论】:
-
看最后一行,大部分问题解决了,但是无法访问数据库...
标签: mysql database playframework playframework-2.0