玩框架-进化don';t在使用MySQL的服务器上自动启动

玩框架-进化don';t在使用MySQL的服务器上自动启动,mysql,playframework,playframework-2.3,playframework-evolutions,Mysql,Playframework,Playframework 2.3,Playframework Evolutions,在服务器上启动应用程序后,它将连接MySQL数据库 2015-04-19 17:00:38,636 - [INFO] - from play in main database [default] connected at jdbc:mysql://localhost/crowdfundme 但是,每次涉及数据库时,它都会崩溃 Cannot invoke the action, eventually got an error: javax.persistence.PersistenceEx

在服务器上启动应用程序后,它将连接MySQL数据库

2015-04-19 17:00:38,636 - [INFO] - from play in main 
database [default] connected at jdbc:mysql://localhost/crowdfundme
但是,每次涉及数据库时,它都会崩溃

Cannot invoke the action, eventually got an error:   javax.persistence.PersistenceException: Query threw SQLException:Table  'crowdfundme.user' doesn't exist 
Bind values:[] 
Query was:
select t0.id c0, t0.name c1, t0.age c2, t0.money c3, t0.nationality c4, t0.has_funded c5, t0.has_answered_questions c6, t0.chosen_bike c7,   t0.funding_amount c8, t0.money_before_funding c9 from user t0 
evolution脚本没有应用,但无法应用,因为当我第一次加载页面时,不可能这样做

我尝试使用常规技巧自动应用进化脚本:

evolutionplugin=enabled
applyEvolutions.default=true
applyDownEvolutions.default=true

但现在我不能再想下去了。也许有一些简单的东西我自己看不见?谢谢你的回答

是第一次进化吗?也许有一些向下的进化?

所以我自己发现了。你必须让游戏产生进化方案。在application.conf
db.default.url=“jdbc:h2:mem:play;MODE=MYSQL”
中使用MYSQL方言创建演化。
在我的例子中,我不得不删除1.sql中的“序列”,以便在我的服务器上使用我的MySQL数据库,但也许你可以找到替代品。

我没有任何1.sql,。。。因为我认为Ebean可以为我处理它们(就像在JDBC开发模式中一样)。任何向下的演进都应用于
applyDownEvolutions。default=true
不是吗?演进插件在开发模式下生成1.sql文件,生产模式使用由开发模式创建的相同文件。我在服务器上部署1.sql文件之前删除了该文件,因此不会导致任何问题。或者你的意思是用一个本地MySQL数据库测试它,然后使用相同的1.sql(如果创建了它)?如果你已经删除了1.sql文件,那么evolutions不起作用。使用sql文件重新部署或手动处理表创建。是的,我今天发现。。。无论如何,谢谢你的回答!:)