随着信息化全国产化的的改革以及国际形势的多变,全国产化的硬件软件和数据库的支持势在必行。我们通过realgbs融合通信平台和相关网关的国产化支持过程来讲解一下国产化的实现。
目前国产化的硬件有鲲鹏920,山东浪潮等等,操作系统有银河麒麟等,数据库有人大金仓等等。
实现国产化的第一步是代码针对国产化基础硬件的移植,就是对国产化的cpu架构和操作系统进行适配性的编译,比如鲲鹏920是arm64的架构。第二部便是数据库的移植,如果之前用的mysql,oracle等比较通用的数据库,就需要移植到人大金仓。针对人大金仓数据库的教程很少,但是安装人大金仓数据库后,在其doc目录能够获得比较详细的使用和开发教程。具体移植代码如下:
首先添加头文件,引入命名空间,不知道国产人大金仓为什么这个命令空间还是oracle的
#include "occi.h"
using namespace oracle::occi;
创建数据库的环境资源
Environment *env = Environment::createEnvironment();
if (env == NULL)
{
cout << "createEnvironment error" << endl;
return -1;
}
创建数据库的连接
oracle::occi::Connection *conn = env->createConnection(usr, passwd, connstr);
if (conn == NULL)
{
cout << "connect database error" << endl;
return -1;
}
执行sql语句
Statement* stmt = conn->createStatement(sql);
stmt->execute();
关闭数据库的连接,释放环境资源
env->terminateConnection(conn);
Environment::terminateEnvironment(env);
这样就完成了人大金仓数据库的操作的封装。通过人大金仓数据库的客户端工具和命令可以查看数据库内容.
最后在国产环境下面成功将音视频,GB28181,onvif,第三方监控系统等设备和系统接入视频会议,如下图:
更多信息
tel: 13971177602
web:www.founu.com