无法使用 Play 框架连接到数据库
Posted
技术标签:
【中文标题】无法使用 Play 框架连接到数据库【英文标题】:Cannot connect to the database with Play framework 【发布时间】:2012-06-03 14:07:21 【问题描述】:我正在建立一个带有游戏的网站!框架,我已经完成了内存数据库的编码和测试,一切都很好,所以我决定将代码推送到我的服务器。但是我遇到了一个奇怪的错误,它说“发生数据库错误:无法连接到数据库,未知数据库'fpn_server'”。
我确实更改了 conf 文件夹中的 application.conf 文件,我将 application.mode 设置为 prod(很确定这与数据库没有连接),将 db 属性设置为“mysql:root:mypass@fpn_server”,然后jpa.ddl 来“创建”以确保数据库已创建。
嗯,老实说,我开发了一个同名数据库的演示网站,并成功部署在我的服务器上。但是这一次,架构发生了变化,我没有像文档中所说的那样使用进化脚本,我只是从 mysql 服务器中删除了数据库。不太确定这是否是错误。
我已经在谷歌上搜索了一段时间,不好。
顺便说一句,我用的是玩 1.2.4 不是玩 2。
谁能帮助我?欢迎提出任何建议!
提前致谢。
【问题讨论】:
连接应该是这样的:db=mysql://user:pwd@host/database 这不是游戏风格连接字符串吧? 【参考方案1】:您正在使用快捷方式 MYSQL5 配置,它看起来很好。但是,也许您应该尝试使用详细设置。
%production.db.url=jdbc:mysql://localhost/fpn_server
%production.db.driver=com.mysql.jdbc.Driver
%production.db.user=root
%production.db.pass=mypass
如果详细设置中有任何看起来错误的地方,这可能是您的快捷方式设置没有意义的原因。
如果配置看起来不错,我会检查您的数据库是否可以访问。
作为参考,这里是 application.conf 数据库选项 - http://www.playframework.org/documentation/1.2.4/configuration#dbconf
【讨论】:
设置很好,所以检查...您的数据库是可访问的,端口是标准端口,并且您的用户可以访问数据库...您的数据库名称或用户可能是罪魁祸首 最后,我解决了这个问题。首先,我在 mysql 服务器中手动创建了数据库,并将 jpa.ddl 设置为更新,它工作正常。如果不存在,“创建”选项不应该创建数据库吗?有什么想法吗?以上是关于无法使用 Play 框架连接到数据库的主要内容,如果未能解决你的问题,请参考以下文章
无法使用 play-slick 1.0.1/slick 3.0 连接到 mysql 数据库:配置错误
在 Synology DS218play 上,WordPress 无法连接到用户数据库,但 phpmyadmin 可以