gpt4 book ai didi

mysql - Play framework 2.0.1 不断尝试进化错误的数据库类型

转载 作者:可可西里 更新时间:2023-11-01 08:52:27 26 4
gpt4 key购买 nike

我正在开发部署在 openshift DIY 应用程序上的 play 2.0.1 应用程序。我在使用数据库时遇到了问题,因为 play 一直在尝试开发错误的数据库。我有一个 mysql 数据库,play 创建了一个 H2 数据库演化脚本。这是脚本。

他想创造什么

create table gif (
id bigint not null,
title varchar(255),
add_date timestamp,
gif_url varchar(255),
img_source varchar(5000),
web_id varchar(255),
found_on varchar(255),
thumbnail varchar(255),
version integer not null,
constraint pk_gif primary key (id))
;

create table task (
id bigint not null,
action varchar(255),
queue integer,
type varchar(255),
object_id bigint,
params varchar(255),
working_on boolean,
version integer not null,
constraint pk_task primary key (id))
;

create sequence gif_seq;

create sequence task_seq;

它应该创建什么

# --- Created by Ebean DDL
# To stop Ebean DDL generation, remove this comment and start using Evolutions

# --- !Ups

create table gif (
id bigint auto_increment not null,
title varchar(255),
add_date datetime,
gif_url varchar(255),
img_source varchar(5000),
web_id varchar(255),
found_on varchar(255),
thumbnail varchar(255),
version integer not null,
constraint pk_gif primary key (id))
;

create table task (
id bigint auto_increment not null,
action varchar(255),
queue integer,
type varchar(255),
object_id bigint,
params varchar(255),
working_on tinyint(1) default 0,
version integer not null,
constraint pk_task primary key (id))
;

我的应用程序.conf

# This is the main configuration file for the application running on openshift.
# ~~~~~

include "application"

# Secret key
# ~~~~~
# The secret key is used to secure cryptographics functions.
# If you deploy your application to several instances be sure to use the same key!
application.secret="TsLWj4[^1N<7lkdhfaiusjdpoifnsaodfEkyPDTO[dnh<7_R[j;cN0:lGK6Mm`0048C@3PK]4KR6HobL"

# Openshift database configuration
# ~~~~~
# You can declare as many datasources as you want.
# By convention, the default datasource is named `default`
#
db.default.driver=com.mysql.jdbc.Driver
db.default.url="jdbc:mysql://"${OPENSHIFT_DB_HOST}":"${OPENSHIFT_DB_PORT}/${OPENSHIFT_APP_NAME}
db.default.user=${OPENSHIFT_DB_USERNAME}
db.default.password=${OPENSHIFT_DB_PASSWORD}

#db.default.driver=org.h2.Driver
#db.default.url="jdbc:h2:mem:play"
#db.default.user=sa
#db.default.password=""
#
# You can expose this datasource via JNDI if needed (Useful for JPA)
# db.default.jndiName=DefaultDS


ebean.default= "models.*"

#Akka
akka.default-dispatcher.fork-join-executor.pool-size-max = 64
akka.actor.debug.receive = on
# Logger
# ~~~~~
# You can also configure logback (http://logback.qos.ch/), by providing a logger.xml file in the conf directory .

# Root logger:
logger.root=ERROR

# Logger used by the framework:
logger.play=INFO

# Logger provided to your application:
logger.application=DEBUG

# openshift action_hooks scripts configuration
# ~~~~~
openshift.play.params="-DapplyEvolutions.default=true"

我用这段代码执行它:

target/start \    -Dhttp.port=8080 \    -Dhttp.address=${OPENSHIFT_INTERNAL_IP} \    -Dconfig.resource=openshift.conf

最佳答案

我注意到您的 application.conf 中的 MySQL 环境变量不正确。正确的 MySQL 环境变量名称是:

OPENSHIFT_MYSQL_DB_HOST
OPENSHIFT_MYSQL_DB_PORT
OPENSHIFT_MYSQL_DB_USERNAME
OPENSHIFT_MYSQL_DB_PASSWORD

虽然我无法测试您的配置以查看此更改是否解决了您的问题,但不正确的变量名称似乎值得指出。

关于mysql - Play framework 2.0.1 不断尝试进化错误的数据库类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11233423/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com