欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

通過(guò)Qt連接OpenGauss數(shù)據(jù)庫(kù)的詳細(xì)教程

 更新時(shí)間:2021年06月23日 17:22:43   作者:一 學(xué)  
本教程介紹如何通過(guò)Qt連接OpenGauss數(shù)據(jù)庫(kù),在openGauss所在的root環(huán)境下執(zhí)行相關(guān)步驟,需要Windows下配置ODBC數(shù)據(jù)源,本文給大家介紹的非常詳細(xì),需要的朋友參考下吧

1 安裝軟件

  • qt-opensource-windows-x86-5.14.2.exe(之前的版本可能不行,安裝過(guò)程中必須包含MinGW64)
  • OpenGauss
  • ODBC

 2 準(zhǔn)備連接環(huán)境

在openGauss所在的root環(huán)境下執(zhí)行下列步驟

2.1 修改數(shù)據(jù)庫(kù)的pg_hba.conf文件

在GS_HOME中查找pg_hba.conf文件,本實(shí)驗(yàn)中數(shù)據(jù)庫(kù)GS_HOME設(shè)置的為/gaussdb/data/db1,實(shí)際操作中GS_HOME地址可以查看安裝時(shí)的配置文件:< PARAM name=“dataNode1” value="/gaussdb/data/db1" />。

cd /gaussdb/data/db1
vi pg_hba.conf

輸入“:90”找到對(duì)應(yīng)位置,然后輸入“i”切換到INSERT模式,將“host all all 192.168.0.132/32 trust”修改為“host all all 192.168.0.132/32 sha256”。

將以下內(nèi)容添加進(jìn)pg_hba.conf文件,完成后按下“Esc”鍵,退出INSERT模式,輸入“:wq”后回車(chē)保存。

# IPv4 local connections:
host    all             all             127.0.0.1/32            trust
host    all    all    192.168.0.19/32    sha256
host all all 0.0.0.0/0 sha256
# IPv6 local connections:
host    all             all             ::1/128                 trust

使用omm用戶登陸,使用gs_ctl將策略生效。

su - omm
gs_ctl reload -D /gaussdb/data/db1/

返回結(jié)果為:

[2020-07-23 15:39:55.398][71828][][gs_ctl]: gs_ctl reload ,datadir is -D "/gaussdb/data/db1"
server signaled

注:如果之前沒(méi)有啟動(dòng)過(guò)數(shù)據(jù)庫(kù),返回結(jié)果如下,繼續(xù)操作即可:

[2021-04-27 17:02:59.640][15354][][gs_ctl]: gs_ctl reload ,datadir is /gaussdb/data/db1
[2021-04-27 17:02:59.640][15354][][gs_ctl]:  PID file "/gaussdb/data/db1/postmaster.pid" does not exist
[2021-04-27 17:02:59.640][15354][][gs_ctl]: Is server running?

2.2 使用omm用戶登陸數(shù)據(jù)庫(kù),給dbuser用戶授權(quán),并退出數(shù)據(jù)庫(kù)

gsql -d postgres -p 26000 -r

postgres=# alter role dbuser sysadmin;
ALTER ROLE

postgres=# \q

2.3 修改數(shù)據(jù)庫(kù)監(jiān)聽(tīng)地址

在GS_HOME中,本實(shí)驗(yàn)中數(shù)據(jù)庫(kù)GS_HOME設(shè)置的為/gaussdb/data/db1。

cd /gaussdb/data/db1
vi postgresql.conf

輸入“:60”找到對(duì)應(yīng)位置,然后輸入“i”切換到INSERT模式,將listen_addresses的值修改成為*,修改后按下“Esc”鍵,退出INSERT模式,輸入“:wq”后回車(chē)保存。

#listen_addresses = '192.168.0.19'              # what IP address(es) to listen on;
listen_addresses = '*'

修改完成后重啟數(shù)據(jù)庫(kù)生效(-D后面的數(shù)據(jù)庫(kù)默認(rèn)路徑,需要根據(jù)實(shí)際情況進(jìn)行修改)。

gs_ctl restart -D /gaussdb/data/db1/

3 Windows下配置ODBC數(shù)據(jù)源

Windows操作系統(tǒng)自帶ODBC數(shù)據(jù)源管理器,無(wú)需用戶手動(dòng)安裝管理器便可直接進(jìn)行配置。

3.1下載客戶端GaussDB(for openGauss)驅(qū)動(dòng)程序并進(jìn)行安裝

下載地址:GaussDB驅(qū)動(dòng)程序
在本地(例如D:/download)下載ZIP文件后進(jìn)行解壓縮,解壓縮后文件如下。
在這里插入圖片描述

由于本實(shí)驗(yàn)openGauss安裝在ECS(openEuler ARM)上,所以進(jìn)入Euler2.8_arm_64文件夾,顯示如下:
在這里插入圖片描述

解壓縮GaussDB-Kernel-V500R001C10-Windows-Odbc.tar.gz文件,顯示如下:

在這里插入圖片描述

點(diǎn)擊psqlodbc_x86.msi進(jìn)行安裝:

在這里插入圖片描述

默認(rèn)設(shè)置,直到安裝完畢。

3.2 打開(kāi)驅(qū)動(dòng)管理器

在配置數(shù)據(jù)源時(shí),請(qǐng)使用對(duì)應(yīng)的驅(qū)動(dòng)管理器(假設(shè)操作系統(tǒng)安裝盤(pán)符為C盤(pán),如果是其他盤(pán)符,請(qǐng)對(duì)路徑做相應(yīng)修改):
64位操作系統(tǒng)上進(jìn)行64位程序開(kāi)發(fā),安裝64位驅(qū)動(dòng)程序后,使用64位的驅(qū)動(dòng)管理器:C:\Windows\System32\odbcad32.exe 或者直接使用“控制面板 > 管理工具 > ODBC 數(shù)據(jù)源(64 位)。

在這里插入圖片描述

3.3 配置數(shù)據(jù)源

在打開(kāi)的驅(qū)動(dòng)管理器上,選擇“用戶DSN > 添加 > PostgreSQL Unicode(x64)”,然后進(jìn)行配置:

在這里插入圖片描述在這里插入圖片描述
在這里插入圖片描述

Data Source:openGauss (數(shù)據(jù)源名稱(chēng),可以自定義)。
Database:postgres (需要連接的Datebase名稱(chēng))。
Server:openGauss數(shù)據(jù)庫(kù)服務(wù)器的公網(wǎng)IP,請(qǐng)根據(jù)實(shí)際情況填寫(xiě)。
Pot:26000 (端口號(hào))。
User Name:dbuser (連接數(shù)據(jù)庫(kù)的用戶名,不能使用omm用戶,需要在數(shù)據(jù)庫(kù)中創(chuàng)建)
Password:dbuser用戶的密碼,請(qǐng)根據(jù)實(shí)際情況填寫(xiě)。

3.4 驗(yàn)證并保存設(shè)置

點(diǎn)擊Test,顯示 Connection successful 表示設(shè)置成功:

在這里插入圖片描述

點(diǎn)擊保存:

在這里插入圖片描述
在這里插入圖片描述

配置成功!

3 Qt安裝

下載好 qt-opensource-windows-x86-5.14.2.exe后,無(wú)腦next就行。但有一點(diǎn)需要注意。打勾的必須選上!打勾的必須選上!打勾的必須選上!

在這里插入圖片描述

4 創(chuàng)建一個(gè)Qt工程

不會(huì)創(chuàng)建的童鞋可以參考qt創(chuàng)建工程教程
注意!Kit必須選64bit的

在這里插入圖片描述

為了使用sql,還必須在xxx.pro下面添加:

QT += sql

接下來(lái)就可以愉快的測(cè)試了!
修改main.cpp文件,代碼如下:

#include "gsql.h"
#include <QSqlDatabase>
#include <QStringList>
#include <QDebug>
#include <QMessageBox>
#include <QtSql>
#include <QSqlQuery>
#include <QApplication>
#include <iostream>
using namespace std;

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    gsql w;
    w.show();
    QSqlDatabase db = QSqlDatabase::addDatabase("QODBC");
	QString dsn = QString::fromLocal8Bit("xxxx");//你在2.3中配置的Data Source,例如openGauss
	qDebug()<<"ODBC connect?"<<db.isValid();
    db.setHostName("xxxx.xxxx.xxxx.xxxx");//你的IP地址
    db.setDatabaseName(dsn);
    db.setUserName("xxx"); //用戶名
    db.setPassword("xxxx");//密碼
    db.setPort(26000); //opengauss端口號(hào)為26000
    if(!db.open())
    {
        qDebug()<<db.lastError().text();
        QMessageBox::critical(0, QObject::tr("Database error"), db.lastError().text());
        return;
    }
    else
        qDebug()<<"database open success!";
    return a.exec();
}

顯示結(jié)果如下,就說(shuō)明連接成功。否則,會(huì)彈出報(bào)錯(cuò)提示。

在這里插入圖片描述

總結(jié)

如果不成功,可能的原因:

  1. Qt 的MinGW選的不是64位的
  2. ODBC沒(méi)有按照要求配置

以上就是通過(guò)Qt連接OpenGauss數(shù)據(jù)庫(kù)的詳細(xì)教程的詳細(xì)內(nèi)容,更多關(guān)于Qt連接OpenGauss數(shù)據(jù)庫(kù)的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • DBeaver執(zhí)行外部sql文件詳細(xì)圖文教程

    DBeaver執(zhí)行外部sql文件詳細(xì)圖文教程

    DBeaver最近才使用,以前使用的PL/SQL,有些不是很熟悉,記錄下來(lái),下面這篇文章主要給大家介紹了關(guān)于DBeaver執(zhí)行外部sql文件的相關(guān)資料,文中通過(guò)圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2023-06-06
  • 關(guān)于面試中常問(wèn)的數(shù)據(jù)庫(kù)回表問(wèn)題

    關(guān)于面試中常問(wèn)的數(shù)據(jù)庫(kù)回表問(wèn)題

    這篇文章主要介紹了關(guān)于面試中常問(wèn)的數(shù)據(jù)庫(kù)回表問(wèn)題,回表就是先通過(guò)數(shù)據(jù)庫(kù)索引掃描出數(shù)據(jù)所在的行,再通過(guò)行主鍵id取出索引中未提供的數(shù)據(jù),即基于非主鍵索引的查詢(xún)需要多掃描一棵索引樹(shù),需要的朋友可以參考下
    2023-07-07
  • SQLServer中exists和except用法介紹

    SQLServer中exists和except用法介紹

    大家好,本篇文章主要講的是SQLServer中exists和except用法介紹,感興趣的同學(xué)趕快來(lái)看一看吧,對(duì)你有幫助的話記得收藏一下哦
    2021-12-12
  • SQL表連接圖解

    SQL表連接圖解

    估計(jì)很多人在學(xué)習(xí)SQL表連接的時(shí)候都會(huì)被各種類(lèi)型的表連接搞得稀里糊涂的,現(xiàn)在好了,有了下面的圖,就可以很直觀的區(qū)分各種表連接了
    2014-12-12
  • 數(shù)據(jù)庫(kù)建立索引的一般依據(jù)小結(jié)

    數(shù)據(jù)庫(kù)建立索引的一般依據(jù)小結(jié)

    以下是一些普遍的建立索引時(shí)的判斷依據(jù)。一言以蔽之,索引的建立必須慎重,對(duì)每個(gè)索引的必要性都應(yīng)該經(jīng)過(guò)仔細(xì)分析,要有建立的依據(jù)
    2012-05-05
  • dbeaver導(dǎo)入導(dǎo)出數(shù)據(jù)庫(kù)簡(jiǎn)單圖文教程

    dbeaver導(dǎo)入導(dǎo)出數(shù)據(jù)庫(kù)簡(jiǎn)單圖文教程

    DBeaver是一款適用于開(kāi)發(fā)人員、數(shù)據(jù)庫(kù)管理員和分析師的多平臺(tái)、多數(shù)據(jù)庫(kù)管理工具,這篇文章主要給大家介紹了關(guān)于dbeaver導(dǎo)入導(dǎo)出數(shù)據(jù)庫(kù)的相關(guān)資料,需要的朋友可以參考下
    2024-01-01
  • 比較實(shí)用SQL語(yǔ)句總結(jié)

    比較實(shí)用SQL語(yǔ)句總結(jié)

    sql語(yǔ)句查詢(xún),比較實(shí)用的技巧
    2008-04-04
  • SQL注入繞過(guò)的技巧總結(jié)

    SQL注入繞過(guò)的技巧總結(jié)

    這篇文章主要給大家總結(jié)了一些關(guān)于SQL注入繞過(guò)的技巧,其中包括引號(hào)繞過(guò)、逗號(hào)繞過(guò)以及比較符(<,>)繞過(guò),文中給出了詳細(xì)的介紹和示例代碼,相信對(duì)大家具有一定的參考價(jià)值,需要的朋友們下面來(lái)一起看看吧。
    2017-02-02
  • 最新Navicat?16??Mac版安裝永久激活教程(親測(cè)有效)

    最新Navicat?16??Mac版安裝永久激活教程(親測(cè)有效)

    這篇文章主要介紹了最新Navicat?16??Mac版安裝永久激活教程(親測(cè)有效),本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)Navicat?16?永久激活教程感興趣的朋友一起看看吧
    2022-08-08
  • 最新DataGrip2020.2.x破解版激活碼的步驟詳解(支持Mac/Windows/Linux)

    最新DataGrip2020.2.x破解版激活碼的步驟詳解(支持Mac/Windows/Linux)

    這篇文章主要介紹了最新DataGrip2020.2.x破解版激活碼教程詳解(支持Mac/Windows/Linux),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-11-11

最新評(píng)論