我试图使用Microsoft 2017数据库启动一个Corda Enterprise 3.2
节点,并在启动时得到以下错误:
com.microsoft.sqlserver.jdbc.SQLServerException:无效列名“计算机名称”。
它在CE 3.1
上运行得很好。
这是我的node.conf
的摘录
"dataSourceProperties" : {
"dataSource" : {
"user":"<username>",
"password":"<password>",
"url" : "jdbc:sqlserver://<HOST>:<PORT>;encrypt=false;databaseName=corda"
},
"dataSourceClassName" : "com.microsoft.sqlserver.jdbc.SQLServerDataSource"
},
"database" : {
"runMigration" : true,
"schema" : "dbo",
"transactionIsolationLevel" : "READ_COMMITTED"
},
我使用mssql-jdbc-6.2.2.jre8.jar
作为JDBC驱动程序。
发布于 2018-12-04 05:32:55
这是一个区分大小写的DB配置问题。使用此sql命令解决:
USE master; GO ALTER DATABASE corda COLLATE French_CI_AS ; GO
旧值是:French_CS_AS
发布于 2018-11-30 08:57:53
看起来,您需要运行数据库迁移工具才能从3.1升级到3.2。你已经有那个Jar文件了吗?如果这是一个测试环境,而且您不关心保险库中的应用程序数据,那么您可以始终删除/重新创建corda数据库。然后重新启动3.2将构建必要的表。如果您需要保存数据,那么数据库迁移工具就是方法之一。
https://docs.corda.r3.com/database-management.html?highlight=migration
https://docs.corda.r3.com/database-management.html?highlight=migration#migration-tool
https://stackoverflow.com/questions/53544340
复制