查看: 6186|回复: 6

使用外部数据库存储数据.

Ray

升级   100%

31

主题

208

回帖

891

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
891
发表于 2018-8-7 11:33:50 | 显示全部楼层 |阅读模式
O2平台使用H2数据库作为自带数据库.可以支持小型应用环境.
对于大型应用环境建议使用外部数据,步骤如下:
在 node_xxx.json中先禁用内建数据库
没有这个文件的情况下使用默认配置,可以从sample中拷贝一个node_127.0.0.1.json到config目录
模版路径o2server/config/sample/node_127.0.0.1.json
存放路径o2server/config/node_127.0.0.1.json
{
  "enable": true,
  "port":null,
  "sslEnable":false,
  "logLevel":"warn",
  "isPrimaryCenter": true,
  "application": {
    "enable": true,
    "port": null,
    "sslEnable": false,
    "proxyHost": "",
    "proxyPort": null,
    "forceRedeploy": true,
    "scanInterval":5,
    "includes":[],
    "excludes":[]
  },
  "web": {
    "enable": true,
    "port": null,
    "sslEnable": false,
    "proxyHost": "",
    "proxyPort": null,
    "forceRedeploy": true
  },
  "storage": {
    "enable": true,
    "port": null,
    "sslEnable": false,
    "name" : ""
  },
  "data": {
    "enable": false,
    "tcpPort": null,
    "webPort": null,
    "includes": [],
    "excludes": []
  }
}
然后在o2server/config目录下创建externalDataSources.json
模版位置: o2server/config/sample/externalDataSources.json
配置样例如下
[
    {
        "url" : "jdbc:db2://127.0.0.1:50000/X01",
        "username" : "db2admin",
        "password" :"xxxxxxxx",
        "includes": [],
        "excludes": [],
        "enable" : true
    }
]
配置您使用的数据库,如果您有多个数据库,配置如下:
[
    {
        "url" : "jdbc:db2://192.168.1.1:50000/X01",
        "username" : "db2admin",
        "password" :"xxxxxxxx",
        "includes": [],
        "excludes": [],
        "enable" : true
        
    },
    {
        "url" : "jdbc:db2://192.168.1.2:50000/X02",
        "username" : "db2admin",
        "password" :"password",
        "includes": [],
        "excludes": [],
        "enable" : true
        
    }
]
系统将自动采用数据库切片(slice)进行分布数据存储,以提高性能.
如果采用分布存储需要满足一下条件,多个数据库实例间同类型,不能混用比如oracle,mysql,多个数据库实例的用户名密码必须一致.
系统支持以下数据库:mysql,postgresql,db2,oracle,informix,derby,国产toprdb,国产达梦.
回复

使用道具 举报

升级   0.43%

5

主题

13

回帖

43

积分

注册会员

Rank: 2

积分
43
发表于 2019-8-26 13:53:33 | 显示全部楼层
我使用的是最新版本 window 程序
回复

使用道具 举报

升级   100%

139

主题

1万

回帖

4万

积分

超级版主

Rank: 8Rank: 8

积分
41458
发表于 2019-9-23 10:14:39 | 显示全部楼层
是不是 externalDataSource.json 文件中 enable您写的false?
从提示上看,系统没有配置任何可用的数据库,node_127.0.0.1.json里的data设置为禁用了, externalDataSource.json 里也没有启用,所以导致系统无法找到可用的数据库,报错:dataServer not enable
回复

使用道具 举报

升级   0.28%

4

主题

7

回帖

28

积分

注册会员

Rank: 2

积分
28
发表于 2019-4-17 23:12:05 | 显示全部楼层
如果不用h2,会初始化数据库吗?
回复

使用道具 举报

升级   100%

139

主题

1万

回帖

4万

积分

超级版主

Rank: 8Rank: 8

积分
41458
发表于 2019-8-26 17:24:03 | 显示全部楼层
驱动是已经有了,你从数据库角度或者配置角度再去查询一下!ps 你不会用很久以前的的吧,,,现在用的驱动是MSSQL,SQLServer2012以上才能用
回复

使用道具 举报

升级   100%

139

主题

1万

回帖

4万

积分

超级版主

Rank: 8Rank: 8

积分
41458
发表于 2019-4-22 13:56:10 | 显示全部楼层
数据库不会自动创建,但是数据表会自动创建的,您需要先创建一个数据库,在数据库连接信息中是需要知道数据库名称的。
回复

使用道具 举报

升级   0.43%

5

主题

13

回帖

43

积分

注册会员

Rank: 2

积分
43
发表于 2019-8-26 13:52:10 | 显示全部楼层
我禁用了内置的H2 数据库,拷贝了一个externalDataSources_sqlserver.json 模版到confi 目录并重命名为:externalDataSources.json
修改externalDataSource.json 中的url,username 和password。=
启动 start data 系统显示下面的错误。 是不是缺少sqlserver 数据库驱动原因造成的呢?
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

联系客服 关注微信 下载APP 返回顶部 返回列表
viewthread