如何在Grails 3中设置数据库?手册在这里看起来过时了:http://grails.github.io/grails-doc/3.0.x/guide/single.html#dataSource
因为它给出了一个使用grove代码进行设置的示例,如下所示:
dataSource {
pooled = true
dbCreate = "update"
url = "jdbc:mysql://localhost:3306/my_database"
driverClassName = "com.mysql.jdbc.Driver"
dialect = org.hibernate.dialect.MySQL5InnoDBDialect
username = "username"
password = "password"
...虽然我有application.yml和
dataSource:
pooled: true
jmxExport: true
driverClassName: org.h2.Driver
username: sa
password:什么方法是最新的?
发布于 2016-04-07 08:07:30
这是一个包含多个数据源的当前postgres示例。我发现冗余是必要的,因为grails、spring和hibernate期望看到配置信息的级别存在一些差异。这让所有人都满意了。还包括jdbc驱动程序的运行时依赖项。对于postgres来说,这是
dependencies {
// all other dependencies
runtime "org.postgresql:postgresql:9.4.1208"
}application.yml文件的开始。是的,“-”行必须在那里。它们可以防止configslurper被混淆。
---
hibernate:
cache:
queries: true
use_second_level_cache: true
use_query_cache: true
region.factory_class: 'org.hibernate.cache.ehcache.SingletonEhCacheRegionFactory'
dialect: org.hibernate.dialect.H2Dialect
dataSources:
hibernate:
cache:
queries: true
use_second_level_cache: true
use_query_cache: true
region.factory_class: 'org.hibernate.cache.ehcache.SingletonEhCacheRegionFactory'
dialect: org.hibernate.dialect.H2Dialect
dataSource:
pooled: true
jmxExport: true
driverClassName: org.postgresql.Driver
driver_class: org.postgresql.Driver
username: user
password: pw
dialect: org.hibernate.dialect.PostgreSQLDialect
hibernate:
cache:
queries: true
use_second_level_cache: true
use_query_cache: true
region.factory_class: 'org.hibernate.cache.ehcache.SingletonEhCacheRegionFactory'
dialect: org.hibernate.dialect.PostgreSQLDialect
connection.driver_class: org.postgresql.Driver
connection.url: jdbc:postgresql://ec2-1-2-3-4.compute-1.amazonaws.com:5432/dbone
connection.username: user
connection.password: pw
connection.pool_size: 15
connection.dialect: org.hibernate.dialect.PostgreSQLDialect
driver_class: org.postgresql.Driver
url: jdbc:postgresql://ec2-1-2-3-4.compute-1.amazonaws.com:5432/dbone
username: user
password: pw
pool_size: 15
driverClassName: org.postgresql.Driver
dataSource_two:
pooled: true
jmxExport: true
driverClassName: org.postgresql.Driver
driver_class: org.postgresql.Driver
username: usertwo
password: pw
dialect: org.hibernate.dialect.PostgreSQLDialect
hibernate:
cache:
queries: true
use_second_level_cache: true
use_query_cache: true
region.factory_class: 'org.hibernate.cache.ehcache.SingletonEhCacheRegionFactory'
dialect: org.hibernate.dialect.PostgreSQLDialect
connection.driver_class: org.postgresql.Driver
connection.url: jdbc:postgresql://ec2-1-2-3-4.compute-1.amazonaws.com:5432/dbtwo
connection.username: usertwo
connection.password: pw
connection.pool_size: 15
connection.dialect: org.hibernate.dialect.PostgreSQLDialect
driver_class: org.postgresql.Driver
url: jdbc:postgresql://ec2-1-2-3-4.compute-1.amazonaws.com:5432/dbtwo
username: usertwo
password: pw
pool_size: 15
driverClassName: org.postgresql.Driver
dataSource_three:
pooled: true
jmxExport: true
driverClassName: org.postgresql.Driver
driver_class: org.postgresql.Driver
username: userthree
password: pw
dialect: org.hibernate.dialect.PostgreSQLDialect
hibernate:
cache:
queries: true
use_second_level_cache: true
use_query_cache: true
region.factory_class: 'org.hibernate.cache.ehcache.SingletonEhCacheRegionFactory'
dialect: org.hibernate.dialect.PostgreSQLDialect
connection.driver_class: org.postgresql.Driver
connection.url: jdbc:postgresql://ec2-1-2-3-4.compute-1.amazonaws.com:5432/dbthree
connection.username: userthree
connection.password: pw
connection.pool_size: 15
connection.dialect: org.hibernate.dialect.PostgreSQLDialect
driver_class: org.postgresql.Driver
url: jdbc:postgresql://ec2-1-2-3-4.compute-1.amazonaws.com:5432/dbthree
username: userthree
password: pw
pool_size: 15
driverClassName: org.postgresql.Driver
environments:
local:
hibernate:
cache:
queries: true
use_second_level_cache: true
use_query_cache: true
region.factory_class: 'org.hibernate.cache.ehcache.SingletonEhCacheRegionFactory'
dialect: org.hibernate.dialect.H2Dialect
dataSources:
hibernate:
cache:
queries: true
use_second_level_cache: true
use_query_cache: true
region.factory_class: 'org.hibernate.cache.ehcache.SingletonEhCacheRegionFactory'
dialect: org.hibernate.dialect.H2Dialect
dataSource:
dbCreate: create
url: jdbc:postgresql://127.0.0.1:5432/dbone
driver_class: org.postgresql.Driver
driverClassName: org.postgresql.Driver
username: userone
password: pw
pool_size: 15
dialect: org.hibernate.dialect.PostgreSQLDialect
logSql: true
hibernate:
cache:
queries: true
use_second_level_cache: true
use_query_cache: true
region.factory_class: 'org.hibernate.cache.ehcache.SingletonEhCacheRegionFactory'
dialect: org.hibernate.dialect.PostgreSQLDialect
connection.driver_class: org.postgresql.Driver
connection.url: jdbc:postgresql://127.0.0.1:5432/dbone
connection.username: userone
connection.password: pw
connection.pool_size: 15
connection.dialect: org.hibernate.dialect.PostgreSQLDialect
driver_class: org.postgresql.Driver
url: jdbc:postgresql://127.0.0.1:5432/dbone
username: userone
password: pw
pool_size: 15
driverClassName: org.postgresql.Driver
dataSource_two:
dbCreate: create
url: jdbc:postgresql://127.0.0.1:5432/dbtwo
driver_class: org.postgresql.Driver
driverClassName: org.postgresql.Driver
username: usertwo
password: pw
pool_size: 15
dialect: org.hibernate.dialect.PostgreSQLDialect
logSql: true
hibernate:
cache:
queries: true
use_second_level_cache: true
use_query_cache: true
region.factory_class: 'org.hibernate.cache.ehcache.SingletonEhCacheRegionFactory'
dialect: org.hibernate.dialect.PostgreSQLDialect
connection.driver_class: org.postgresql.Driver
connection.url: jdbc:postgresql://127.0.0.1:5432/dbtwo
connection.username: usertwo
connection.password: pw
connection.pool_size: 15
connection.dialect: org.hibernate.dialect.PostgreSQLDialect
driver_class: org.postgresql.Driver
url: jdbc:postgresql://127.0.0.1:5432/dbtwo
username: usertwo
password: pw
pool_size: 15
driverClassName: org.postgresql.Driver
dataSource_three:
dbCreate: create
url: jdbc:postgresql://127.0.0.1:5432/dbthree
driver_class: org.postgresql.Driver
driverClassName: org.postgresql.Driver
username: userthree
password: pw
pool_size: 15
dialect: org.hibernate.dialect.PostgreSQLDialect
logSql: true
hibernate:
cache:
queries: true
use_second_level_cache: true
use_query_cache: true
region.factory_class: 'org.hibernate.cache.ehcache.SingletonEhCacheRegionFactory'
dialect: org.hibernate.dialect.PostgreSQLDialect
connection.driver_class: org.postgresql.Driver
connection.url: jdbc:postgresql://127.0.0.1:5432/dbthree
connection.username: userthree
connection.password: pw
connection.pool_size: 15
connection.dialect: org.hibernate.dialect.PostgreSQLDialect
driver_class: org.postgresql.Driver
url: jdbc:postgresql://127.0.0.1:5432/dbthree
username: userthree
password: pw
pool_size: 15
driverClassName: org.postgresql.Driver
development:
hibernate:
cache:
queries: true
use_second_level_cache: true
use_query_cache: true
region.factory_class: 'org.hibernate.cache.ehcache.SingletonEhCacheRegionFactory'
dialect: org.hibernate.dialect.H2Dialect
dataSources:
hibernate:
cache:
queries: true
use_second_level_cache: true
use_query_cache: true
region.factory_class: 'org.hibernate.cache.ehcache.SingletonEhCacheRegionFactory'
dialect: org.hibernate.dialect.H2Dialect
dataSource:
dbCreate: create-drop
url: jdbc:postgresql://ec2-1-2-3-4.compute-1.amazonaws.com:5432/dbone
driver_class: org.postgresql.Driver
driverClassName: org.postgresql.Driver
username: userone
password: pw
pool_size: 15
dialect: org.hibernate.dialect.PostgreSQLDialect
hibernate:
cache:
queries: true
use_second_level_cache: true
use_query_cache: true
region.factory_class: 'org.hibernate.cache.ehcache.SingletonEhCacheRegionFactory'
dialect: org.hibernate.dialect.PostgreSQLDialect
connection.driver_class: org.postgresql.Driver
connection.url: jdbc:postgresql://ec2-1-2-3-4.compute-1.amazonaws.com:5432/dbone
connection.username: userone
connection.password: pw
connection.pool_size: 15
connection.dialect: org.hibernate.dialect.PostgreSQLDialect
driver_class: org.postgresql.Driver
url: jdbc:postgresql://ec2-1-2-3-4.compute-1.amazonaws.com:5432/dbone
username: userone
password: pw
pool_size: 15
driverClassName: org.postgresql.Driver
dataSource_two:
dbCreate: create-drop
url: jdbc:postgresql://ec2-1-2-3-4.compute-1.amazonaws.com:5432/dbtwo
driver_class: org.postgresql.Driver
driverClassName: org.postgresql.Driver
username: usertwo
password: pw
pool_size: 15
dialect: org.hibernate.dialect.PostgreSQLDialect
hibernate:
cache:
queries: true
use_second_level_cache: true
use_query_cache: true
region.factory_class: 'org.hibernate.cache.ehcache.SingletonEhCacheRegionFactory'
dialect: org.hibernate.dialect.PostgreSQLDialect
connection.driver_class: org.postgresql.Driver
connection.url: jdbc:postgresql://ec2-1-2-3-4.compute-1.amazonaws.com:5432/dbtwo
connection.username: usertwo
connection.password: pw
connection.pool_size: 15
connection.dialect: org.hibernate.dialect.PostgreSQLDialect
driver_class: org.postgresql.Driver
url: jdbc:postgresql://ec2-1-2-3-4.compute-1.amazonaws.com:5432/dbtwo
username: usertwo
password: pw
pool_size: 15
driverClassName: org.postgresql.Driver
dataSource_three:
dbCreate: create-drop
url: jdbc:postgresql://ec2-1-2-3-4.compute-1.amazonaws.com:5432/dbthree
driver_class: org.postgresql.Driver
driverClassName: org.postgresql.Driver
username: userthree
password: pw
pool_size: 15
dialect: org.hibernate.dialect.PostgreSQLDialect
hibernate:
cache:
queries: true
use_second_level_cache: true
use_query_cache: true
region.factory_class: 'org.hibernate.cache.ehcache.SingletonEhCacheRegionFactory'
dialect: org.hibernate.dialect.PostgreSQLDialect
connection.driver_class: org.postgresql.Driver
connection.url: jdbc:postgresql://ec2-1-2-3-4.compute-1.amazonaws.com:5432/dbthree
connection.username: userthree
connection.password: pw
connection.pool_size: 15
connection.dialect: org.hibernate.dialect.PostgreSQLDialect
driver_class: org.postgresql.Driver
url: jdbc:postgresql://ec2-1-2-3-4.compute-1.amazonaws.com:5432/dbthree
username: userthree
password: pw
pool_size: 15
driverClassName: org.postgresql.Driver
---
---
[ this is not the end of the application.yml, just the end of the datasource section.]发布于 2016-11-03 03:18:17
从GORM 6的grails 3.2.2开始,grails文档是最新的和正确的,不再需要在第一个回答日期4月7日显示的这个“额外的”配置。dataSource配置示例如下:
---
---
dataSources:
hibernate:
cache:
queries: true
use_second_level_cache: true
use_query_cache: true
region.factory_class: 'org.hibernate.cache.ehcache.SingletonEhCacheRegionFactory'
dataSource:
pooled: true
# pool_size: 15
jmxExport: true
driverClassName: org.postgresql.Driver
dataSource_two:
pooled: true
# pool_size: 15
jmxExport: true
driverClassName: org.postgresql.Driver
#############################################################
# Spring Actuator Endpoints are Disabled by Default
#############################################################
---
---
endpoints:
enabled: false
jmx:
enabled: true
---
---
grails:
codegen:
defaultPackage: com.healthreveal
controllers:
defaultScope: singleton
converters:
encoding: UTF-8
mime:
disable:
accept:
header:
userAgents:
- Gecko
- WebKit
- Presto
- Trident
types:
all: '*/*'
atom: application/atom+xml
css: text/css
csv: text/csv
form: application/x-www-form-urlencoded
html:
- text/html
- application/xhtml+xml
js: text/javascript
json:
- application/json
- text/json
multipartForm: multipart/form-data
rss: application/rss+xml
text: text/plain
hal:
- application/hal+json
- application/hal+xml
xml:
- text/xml
- application/xml
profile: rest-api (or web)
spring:
transactionManagement:
proxies: false
urlmapping:
cache:
maxsize: 1000
---
---
# you would think you could put this in the section above, but for some reason you can't
grails.logging.jul.usebridge: true
---
---
hibernate:
cache:
queries: false
use_second_level_cache: true
use_query_cache: false
region.factory_class: org.hibernate.cache.ehcache.SingletonEhCacheRegionFactory
---
---
info:
app:
name: '@info.app.name@'
version: '@info.app.version@'
grailsVersion: '@info.app.grailsVersion@'
---
---
spring:
groovy:
template:
check-template-location: false
#################################################################
# This second section is a set of environment-specific over-rides
# to the common parameters. There is no need to repeat a
# common parameter unless you want to change the setting (or add
# a new setting) within the context of an environment.
#################################################################
---
---
environments:
development:
dataSources:
dataSource:
dbCreate: update
url: jdbc:postgresql://localhost:5432/dbOne
username: someuser
password: somepassword
dataSource_xyz:
dbCreate: update
url: jdbc:postgresql://localhost:5432/dbXYZ
username: someuser
password: somepassword
grails:
serverURL: "http://localhost:8080"
plugin:
forceSSL:
enabled: false
server:
port: 8080
ssl:
enabled: falsehttps://stackoverflow.com/questions/34116328
复制相似问题