【发布时间】:2013-07-09 18:46:17
【问题描述】:
我的问题是部署服务器上的play数据库进化一次又一次处于不一致的状态。我不明白有什么问题。
- 所有测试都运行良好(在内存中)
- 我可以通过运行(在内存中)启动应用程序
- 我删除了evolution sql-script,让它重新生成(通过点击浏览器的evolution trigger)
- 我在 conf 文件中为 mysql 访问切换了必要的属性
- 我使用
play clean compile stage开始构建 - 我删除并创建了 mysql 数据库
- 然后我使用 -DapplyEvolutions.default=true 启动应用程序
我经常得到这个错误:
[error] play - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'sequence life_cycle_event_seq' at line 1 [ERROR:1064, SQLSTATE:42000]
Oops, cannot start the server.
@6epm5i5m6: Database 'default' is in inconsistent state!
at play.api.db.evolutions.Evolutions$.checkEvolutionsState(Evolutions.scala:177)
at play.api.db.evolutions.Evolutions$.applyScript(Evolutions.scala:275)
at play.api.db.evolutions.EvolutionsPlugin$$anonfun$onStart$1$$anonfun$apply$1.apply$mcV$sp(Evolutions.scala:446)
at play.api.db.evolutions.EvolutionsPlugin.withLock(Evolutions.scala:483)
at play.api.db.evolutions.EvolutionsPlugin$$anonfun$onStart$1.apply(Evolutions.scala:439)
at play.api.db.evolutions.EvolutionsPlugin$$anonfun$onStart$1.apply(Evolutions.scala:437)
at scala.collection.immutable.List.foreach(List.scala:309)
at play.api.db.evolutions.EvolutionsPlugin.onStart(Evolutions.scala:437)
at play.api.Play$$anonfun$start$1$$anonfun$apply$mcV$sp$1.apply(Play.scala:63)
at play.api.Play$$anonfun$start$1$$anonfun$apply$mcV$sp$1.apply(Play.scala:63)
at scala.collection.immutable.List.foreach(List.scala:309)
at play.api.Play$$anonfun$start$1.apply$mcV$sp(Play.scala:63)
at play.api.Play$$anonfun$start$1.apply(Play.scala:63)
at play.api.Play$$anonfun$start$1.apply(Play.scala:63)
at play.utils.Threads$.withContextClassLoader(Threads.scala:18)
at play.api.Play$.start(Play.scala:62)
at play.core.StaticApplication.<init>(ApplicationProvider.scala:54)
at play.core.server.NettyServer$.createServer(NettyServer.scala:228)
at play.core.server.NettyServer$$anonfun$main$5.apply(NettyServer.scala:259)
at play.core.server.NettyServer$$anonfun$main$5.apply(NettyServer.scala:258)
at scala.Option.map(Option.scala:145)
at play.core.server.NettyServer$.main(NettyServer.scala:258)
at play.core.server.NettyServer.main(NettyServer.scala)
在玩了整个过程之后突然就可以了。
【问题讨论】:
-
你能发布你用于进化的 sql 脚本吗?当您第一行说“在第 1 行 [ERROR:1064, SQLSTATE:42000] 附近 'sequence life_cycle_event_seq' 附近”时,可能有什么问题
-
sql 文件很大。文件中不存在这条语句
sequence life_cycle_event_seq。
标签: playframework playframework-2.1 playframework-evolutions