配置高斯数据库前,请确保IoT已安装完毕,IoT安装包不提供高斯数据库,需提前获取可用高斯数据库的连接信息(ip地址,用户名密码等)。
1. 更改 /usr/local/hvisions/iot/config/system-config 文件,把数据库相关的配置更替为gauss数据库
# 数据库配置,改为gauss
DB_TYPE=gauss
# 是否使用外部数据库,设置为true
DB_EXTERNAL=true # 高斯数据库必须改为true
# 数据库的地址,可以填写容器名,也可以填写数据库的ip地址,如192.168.1.100
DB_HOST=127.0.0.1 # 高斯数据库ip地址
DB_PORT=5432 # 高斯数据库端口
# 数据库的用户名密码
DB_USERNAME=root # 高斯数据库用户名
DB_PASSWORD=password # 高斯数据库密码
# 数据库的url,需改为jdbc:gaussdb协议
DB_URL=jdbc:gaussdb://${DB_HOST}:${DB_PORT} # 高斯数据库url,必须改为此格式
# 清空该配置
DB_OPTIONS=
2.连接数据库,高斯初始数据库一般为postgres,执行以下sql创建数据库
CREATE DATABASE equipment_management;
CREATE DATABASE authority;
CREATE DATABASE iot_data;
CREATE DATABASE hiot;
CREATE DATABASE iot_thing_data;
CREATE DATABASE oee_service;
CREATE DATABASE system_service;
CREATE DATABASE iot_alarm;
CREATE DATABASE nacos_config;
CREATE DATABASE edge_connection;
CREATE DATABASE cas_server;
CREATE DATABASE data_service;

以dbeaver工具为例,复制sql到此处执行
文件中的sql需到对应的数据库执行
注意:所有sql文件中,10.60.16.29 需要全局替换为部署IoT服务器的ip地址(不是高斯数据库的IP地址) ,若无法执行sql文件,可将文件内容复制到数据库执行
cas_server 库
authority 库
system_service 库,单机版sql
system_service 库,集群版sql,system_service_cluster.sql文件中,10.60.16.29(节点1服务器ip)、 10.60.16.30(节点2服务器ip)、10.60.16.31(节点3服务器ip),需要分别全局替换为集群中三台服务器的ip地址。10.60.16.200 需要替换为VIP
3. nacos配置(单机部署跳过此步)
进入到安装包目录下 packages/gaussdb 执行命令
docker load -i nacos-2.3.2.tar
修改nacos启动脚本 /usr/local/hvisions/iot/services/nacos/hiot-start-nacos.sh
更改镜像名
IMAGE=nacos:v2.3.2

更改启动参数
-e MYSQL_SERVICE_HOST=$DB_HOST \
-v $HIOT_LOCATION/common/conf/nacos/application.properties:/home/nacos/conf/application.properties \

进入到nacos_config数据库,执行 /usr/local/hvisions/iot/common/conf/nacos/nacos-schema.sql 文件中的sql,也可下载下面文件
4. 执行 /usr/local/hvisions/iot/script/ds_gaussdb.sh 脚本,该脚本功能为增加各服务的启动环境配置,可检查edge-management服务的配置文件 /usr/local/hvisions/iot/services/edge-management/start-options,若末尾有如下配置代表添加成功
-Dsetting.datasource=PostgreSQL
-Dspring.datasource.driver-class-name=com.huawei.gauss200.jdbc.Driver
-Dspring.jpa.properties.hibernate.dialect=com.hvisions.iot.utils.db.PgDialect

检查/usr/local/hvisions/iot/services/cas/start-options 是否包括如下配置
-Dsetting.datasource=PostgreSQL
-Dspring.datasource.driver-class-name=com.huawei.gauss200.jdbc.Driver
-Dspring.jpa.properties.hibernate.dialect=com.hvisions.cas.dao.dialect.PgDialect


执行成功如图所示
5. 执行 /usr/local/hvisions/iot/services/start-all-services.sh 脚本,重启所有服务。
6. 执行 /usr/local/hvisions/iot/script/kingbase/importMenu.sh 脚本,导入菜单。