银河麒麟QT连接DM8数据库

本文详细描述了如何在Linux系统上安装达梦8ODBC驱动以及Qt5.9.6中的QODBC驱动,包括unixODBC的编译步骤,以及遇到的常见问题如找不到qtsqldrivers-config.pri和QODBC未加载的解决方法。
部署运行你感兴趣的模型镜像

1. 安装达梦8


官网下载, 按照官方文档进行安装即可.

2. 安装unixodbc


1> 下载odbc安装包 unixODBC-2.3.7pre.tar.gz
2> 解压

tar -xvf unixODBC-2.3.7pre.tar.gz

3> 编译

./configure -prefix /usr/local
make && make install

4> 查找配置

odbcinst -j

5> 修改配置/usr/local/etc/odbcinst.ini

[DM8 ODBC DRIVER]
Description = ODBC DRIVER FOR DM8
Driver = /dm8/bin/libdodbc.so

6> 修改配置/usr/local/etc/odbc.ini

[DM8]
Description = DM ODBC DSND
Driver = DM8 ODBC DRIVER
SERVER = localhost
UID = SIMDB
PWD = systemdba
TCP_PORT = 5236

3. 编译QT环境QODBC驱动


/opt/Qt5.9.6/5.9.6/Src/qtbase/src/plugins/sqldrivers/odbc

4. 报错


4.1 找不到qtsqldrivers-config.pri

在这里插入图片描述
解决措施:
step1. 修改/opt/Qt5.9.6/5.9.6/Src/qtbase/src/plugins/sqldrivers/qsqldriverbase.pri文件

QT  = core core-private sql-private

# For QMAKE_USE in the parent projects.
#include($$shadowed($$PWD)/qtsqldrivers-config.pri)
include($$shadowed($$PWD)/configure.pri)

PLUGIN_TYPE = sqldrivers
load(qt_plugin)

DEFINES += QT_NO_CAST_TO_ASCII QT_NO_CAST_FROM_ASCII

step2. 修改odbc.pro文件, 注释掉QMAKE_USE += odbc
step3. 执行/opt/Qt5.9.6/5.9.6/gcc_64/bin/qmake “LIBS+=-L/usr/local/lib -lodbc”
step4. make
step5. 执行cp …/plugins/sqldrivers/libqsqlodbc.so /opt/Qt5.9.6/5.9.6/gcc_64/plugins/sqldrivers/

4.2 QODBC未加载, 但是提示QODBC avaiable


在这里插入图片描述
可能原因及解决措施:
1> 配置问题, 检查配置, 标红的地方需要一致
在这里插入图片描述
2> 可能是QODBC库依赖不全, ldd查看一下补全依赖即可!

您可能感兴趣的与本文相关的镜像

ACE-Step

ACE-Step

音乐合成
ACE-Step

ACE-Step是由中国团队阶跃星辰(StepFun)与ACE Studio联手打造的开源音乐生成模型。 它拥有3.5B参数量,支持快速高质量生成、强可控性和易于拓展的特点。 最厉害的是,它可以生成多种语言的歌曲,包括但不限于中文、英文、日文等19种语言

配置银河麒麟 V10 操作系统上的 DM8 数据库以启用数据守护功能,需要完成一系列步骤,包括环境准备、主备数据库的安装与配置、以及数据守护的参数设置。以下是详细的配置流程: ### 3.1 环境准备 在开始配置之前,确保满足以下条件: - **操作系统**:银河麒麟 V10 操作系统已正确安装。 - **DM8数据库**:DM8数据库软件已安装在主备服务器上,并且数据库实例已初始化完成。 - **网络配置**:主备服务器之间能够通过网络进行通信,建议使用私有网络以提高性能和安全性。 - **时间同步**:确保主备服务器的时间同步,可以使用NTP服务进行时间校准。 ### 3.2 安装DM8数据库 如果尚未安装DM8数据库,请按照官方文档进行安装。安装完成后,使用`dminit`工具初始化数据库实例。初始化完成后,可以使用`disql`命令行工具连接数据库,验证安装是否成功[^1]。 ```bash /dm8/dminstall/bin/disql sysdba/dameng12345@localhost:5236 ``` ### 3.3 配置主备数据库 DM8数据库的数据守护功能依赖于主备数据库的配置。以下是主备数据库的基本配置步骤: #### 3.3.1 主数据库配置 1. **修改dm.ini文件**:在主数据库的安装目录下找到`dm.ini`文件,配置以下参数: - `INSTANCE_NAME`:设置为主数据库实例名称,例如`PRIMARY`。 - `PORT_NUM`:设置为数据库监听端口号,例如`5236`。 - `ENABLE_HA`:启用高可用性功能,设置为`1`。 - `ARCH_INI`:启用归档日志功能,设置为`1`。 2. **配置归档日志**:在`dmarch.ini`文件中配置归档日志路径和模式。确保归档日志能够被传输到备数据库。 3. **启动主数据库**:使用`dmserver`命令启动主数据库实例。 #### 3.3.2 备数据库配置 1. **修改dm.ini文件**:在备数据库的安装目录下找到`dm.ini`文件,配置以下参数: - `INSTANCE_NAME`:设置为备数据库实例名称,例如`STANDBY`。 - `PORT_NUM`:设置为数据库监听端口号,例如`5237`。 - `ENABLE_HA`:启用高可用性功能,设置为`1`。 - `ARCH_INI`:启用归档日志功能,设置为`1`。 2. **配置归档日志**:在`dmarch.ini`文件中配置归档日志路径和模式,确保能够接收来自主数据库的归档日志。 3. **启动备数据库**:使用`dmserver`命令启动备数据库实例。 ### 3.4 配置数据守护 DM8数据库的数据守护功能通过`dmwatcher.ini`文件进行配置。以下是配置步骤: 1. **创建dmwatcher.ini文件**:在主备数据库的安装目录下创建`dmwatcher.ini`文件,配置以下参数: - `GROUP_NAME`:设置为相同的组名,例如`GROUP1`。 - `WATCHER_IP`:设置为当前服务器的IP地址。 - `WATCHER_PORT`:设置为数据守护监听端口号,例如`5336`。 - `INST_IP`:设置为当前数据库实例的IP地址。 - `INST_PORT`:设置为当前数据库实例的端口号。 - `INST_OGUID`:设置为相同的对象组ID,例如`456789`。 2. **启动数据守护进程**:使用`dmwatcher`命令启动数据守护进程,指定`dmwatcher.ini`文件作为参数。 ```bash /dm8/dminstall/bin/dmwatcher /dm8/dminstall/config/dmwatcher.ini ``` 3. **验证数据守护状态**:使用`disql`连接到主数据库,执行以下SQL语句查看数据守护状态: ```sql SELECT * FROM V$DM_WATCHER; ``` ### 3.5 测试数据守护功能 为了确保数据守护功能正常工作,可以进行以下测试: - **手动切换**:使用`dmctl`工具手动切换主备数据库角色,验证切换过程是否顺利。 - **故障切换**:模拟主数据库故障,观察备数据库是否能自动接管服务。 - **数据一致性检查**:比较主备数据库的数据,确保数据一致。 ### 3.6 常见问题与解决 - **连接失败**:检查主备数据库的网络配置,确保端口开放且可访问。 - **数据不同步**:检查归档日志的配置,确保归档日志能够正确传输并应用到备数据库。 - **数据守护进程未启动**:检查`dmwatcher.ini`文件的配置,确保参数正确且无语法错误。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

SuperYang_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值