我想使用PostgreSQL作为我的节点数据库,而不是H2。Corda节点可以使用PostgreSQL吗?我该如何配置我的节点使用PostgreSQL数据库?
我想使用PostgreSQL作为我的节点数据库,而不是H2。Corda节点可以使用PostgreSQL吗?我该如何配置我的节点使用PostgreSQL数据库?
Corda 2和Corda 3都允许使用PostgreSQL 9.6,并使用PostgreSQL JDBC Driver 42.1.4。请注意,这是一个实验性的社区贡献,目前尚未经过测试。
以下是PostgreSQL的节点配置示例块:
dataSourceProperties = {
dataSourceClassName = "org.postgresql.ds.PGSimpleDataSource"
dataSource.url = "jdbc:postgresql://[HOST]:[PORT]/postgres"
dataSource.user = [USER]
dataSource.password = [PASSWORD]
}
database = {
transactionIsolationLevel = READ_COMMITTED
schema = [SCHEMA]
}
node.conf
文件中。database.schema
属性是可选的。它表示数据库的命名空间。database.schema
的值不用双引号括起来,Postgres总是将其视为小写值(例如,AliceCorp
变成了alicecorp
)。您可以使用extraConfig=[...]块将Postgresql DB属性添加到build.gradle脚本中的节点配置中,如下所示。
node {
...
extraConfig = [
dataSourceProperties: [
dataSourceClassName : "org.postgresql.ds.PGSimpleDataSource",
'dataSource.url' : "jdbc:postgresql://localhost:5432/nodedb",
'dataSource.user' : "postgres",
'dataSource.password' : "pa$$w0rd"
],
database: [
transactionIsolationLevel : "READ_COMMITTED"
]
]
}