华为云征文|Flexus云服务X实例安装ODBC驱动,在ODBC中建立MySQL数据库连接,通过QT连接云数据库

news2024/9/22 17:19:19

在这里插入图片描述

引出


4核12G-100G-3M规格的Flexus X实例使用测评第2弹:Flexus云服务X实例安装ODBC驱动,在ODBC中建立MySQL数据库连接,通过QT连接云数据库

什么是Flexus云服务器X实例

官方解释:

Flexus云服务器X实例是新一代面向中小企业和开发者打造的柔性算力云服务器,可智能感知业务负载,适用于电商直播、企业建站、开发测试环境、游戏服务器、音视频服务等中低负载场景。相较于Flexus应用服务器L实例,Flexus云服务器X实例的优势包含:提供丰富的公共镜像、可灵活自定义vCPU内存配比、智能感知业务动态升降配,负载范围更高等。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

连接本地MySQL

1.首先下载MySQL的ODBC驱动

MySQL :: Download Connector/ODBC

首先在MySQL的官网上下载ODBC,我这里选择第一个,64位的安装包;

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

下载完成后,点击运行,进行ODBC的安装

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

在这里插入图片描述

2.启动运行,创建用户数据源

通过控制台命令启动ODBC数据源管理程序,添加ODBC ANSI 驱动;注意这里的datasourcename需要用到!!!

cd \Windows\SysWOW64
odbcad32.exe

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

注意这里的Data Source Name 后面在qt中需要用到

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

点击test,测试连接是否成功

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

注意上面的Data Source Name 在后面的qt中建立Mysql连接时需要用到;

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

补充:ANSI 版和 Unicode 版

ODBC(开放数据库连接)驱动程序有两种版本:ANSI 版和 Unicode 版。它们之间的主要区别在于它们处理字符串数据的方式。

  1. ANSI 版 ODBC
  • 字符编码:ANSI 版 ODBC 使用本地操作系统的默认字符编码。例如,在 Windows 上,它通常使用 Windows-1252 或其他基于系统区域设置的编码。
  • 函数后缀:ANSI 版 ODBC 函数通常以 A 结尾。例如,SQLConnect 的 ANSI 版本是 SQLConnectA
  • 字符类型:ANSI 版 ODBC 函数使用 char 类型来处理字符串。
  • 兼容性:适用于那些只需要处理单字节字符集(SBCS)或双字节字符集(DBCS)的应用程序。
  1. Unicode 版 ODBC
  • 字符编码:Unicode 版 ODBC 使用宽字符编码(例如 UTF-16)。这使得它能够处理多种语言和字符集。
  • 函数后缀:Unicode 版 ODBC 函数通常以 W 结尾。例如,SQLConnect 的 Unicode 版本是 SQLConnectW
  • 字符类型:Unicode 版 ODBC 函数使用 wchar_t 类型来处理字符串。
  • 兼容性:适用于需要处理多字节字符集(MBCS)和各种语言的应用程序。

比较与选择

选择使用 ANSI 版还是 Unicode 版 ODBC 取决于你的应用程序的需求:

  • 字符集需求:如果你的应用程序只需要处理 ASCII 或单字节字符集,ANSI 版可能就足够了。如果需要处理多语言或多字符集,Unicode 版是更好的选择。
  • 兼容性:某些老旧的系统和数据库可能仅支持 ANSI 版 ODBC。如果你的应用程序需要与这些系统兼容,使用 ANSI 版可能会更好。
  • 国际化:如果你的应用程序需要国际化支持(如处理不同语言的字符),建议使用 Unicode 版。

3.qt代码连接

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

    connect(ui->pushButton_2,&QPushButton::clicked,this,[=](){
        // 使用ODBC驱动
        QSqlDatabase db = QSqlDatabase::addDatabase("QODBC");
        db.setHostName("127.0.0.1"); // 云数据库的主机地址
        db.setPort(3306); // 端口
        db.setDatabaseName("mydatasource"); // 数据库名称
        db.setUserName("root"); // 用户名
        db.setPassword("123"); // 密码
        bool ok = db.open();
        qDebug() << ok;
        if (!ok) {
            qDebug() << "Database error occurred:" << db.lastError().text();
        }

        qDebug() << QSqlDatabase::drivers();
    });

如何连接华为云服务器中的MySQL

1.在Centos中安装Linux版本的ODBC驱动

通过以下命令安装Linux版本的ODBC驱动

sudo yum install mysql-connector-odbc

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

报错解决方案一:改check为 0 ,但是没有生效,估计是没有把这个文件重新载入??

vim /etc/yum.repos.d/epel.repo

在这里插入图片描述

解决方案2:执行命令后面加入参数–nogpgcheck,忽略检查

sudo yum install mysql-connector-odbc --nogpgcheck

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

如果遇到报错可以忽略检查,就可以安装成功

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

2.在ODBC连接管理器中建立和华为云的链接

和本地MySQL的链接类似,这里需要先通过ODBC建立和华为云中数据库的连接;然后QT访问ODBC,进而对云数据库进行相关操作

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

3.qt代码通过ODBC连接华为云

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

connect(ui->pushButton,&QPushButton::clicked,this,[=](){
        qDebug() << "\n======进行数据库的链接====";

        QSqlDatabase db = QSqlDatabase::addDatabase("QODBC"); // 使用 QMYSQL 驱动
        db.setHostName(""); // 云数据库的主机地址
        db.setPort(3306); // 端口
        db.setDatabaseName("huawei"); // 数据库名称
        db.setUserName("root"); // 用户名
        db.setPassword(""); // 密码

        if (!db.open()) {
            qDebug() << "Database error occurred:" << db.lastError().text();
            return;
        }

        qDebug() << "连接成功";

    });

报错解决

报错:QSqlDatabase: ODBC driver not loaded,这里是写错了

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

报错解决:Access denied for user ‘root@localhost’

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

这里我们需要修改权限,允许其他ip通过root用户访问MySQL

 update user set Host='%' where User='root';

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

flush privileges;
flush hosts;

在这里插入图片描述

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传


总结

4核12G-100G-3M规格的Flexus X实例使用测评第2弹:Flexus云服务X实例安装ODBC驱动,在ODBC中建立MySQL数据库连接,通过QT连接云数据库

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2102716.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

第140天:内网安全-横向移动局域网ARP欺骗DNS劫持钓鱼中间人单双向

目录 案例一&#xff1a;局域网&工作组-ARP原理-断网限制-单向 案例二&#xff1a;局域网&工作组-ARP欺骗-劫持数据-双向 案例三&#xff1a;局域网&工作组-DNS 劫持-钓鱼渗透-双向 案例一&#xff1a;局域网&工作组-ARP原理-断网限制-单向 原理&#xff1…

pytorch利用简单CNN实现葡萄病虫害图片识别

1 前言 之前我开发了一个葡萄病虫害的可视化系统&#xff0c;最近就想给这个系统增加2个功能&#xff0c;一个是对接一个AI助手&#xff0c;可以进行葡萄病虫害的咨询&#xff0c;直接对接千问大模型&#xff0c;这个在之前的博文里已经介绍过对接方法了&#xff0c;第二个是做…

ChatGPT与R语言融合技术在生态环境数据统计分析、绘图、模型中的实践与进阶应用

自2022年GPT&#xff08;Generative Pre-trained Transformer&#xff09;大语言模型的发布以来&#xff0c;它以其卓越的自然语言处理能力和广泛的应用潜力&#xff0c;在学术界和工业界掀起了一场革命。在短短一年多的时间里&#xff0c;GPT已经在多个领域展现出其独特的价值…

【JavaWeb】JDBCDruidTomcat入门使用

本章使用技术版本&#xff1a; Tomcatv10.1.25 关于javaweb相关的其他技术&#xff0c;比如tomcat和maven&#xff0c;在我的主页记录了笔记&#xff0c;ajax我用的是本地笔记以后再考虑上传&#xff0c;前端三板斧我用的菜鸟教程文档 JDBC 初识 JDBC概念 JDBC 就是使用Jav…

MatLab基础学习01

MatLab基础学习01 1.基础入门2.MatLab的数据类型2.1数字2.2字符串2.3矩阵2.4.元胞数组2.5结构体 3.MatLab的矩阵的操作3.1矩阵定义与构造3.2矩阵的下标取值 4.MatLab的逻辑流程4. For循环结构4.2 While循环&#xff0c;当条件成立的时候进行循环4.3 IF end 1.基础入门 matlba必…

1.3 SQL注入之MYSQL系统库

一.系统库释义 提供了访问数据库元数据的方式 元数据是关于数据库的数据&#xff0c;如数据库名和表名&#xff0c;列的数据类型或访问权限。 1.information_schema 库&#xff1a;是信息数据库&#xff0c;其中保存着关于MySQL服务器所维护的所有其他数据库的信息&#xff1…

公园智能厕所引导大屏,清楚显示厕位有无人状态

在科技飞速发展的今天&#xff0c;公园的设施也在不断与时俱进。其中&#xff0c;公园智能厕所引导大屏的出现&#xff0c;为游客带来了全新的如厕体验。 走进公园的智能厕所区域&#xff0c;首先映入眼帘的便是那醒目的引导大屏。屏幕上清晰地显示着各个厕位的有无人状态&…

如何使用Cheerio与jsdom解析复杂的HTML结构进行数据提取

背景介绍 在现代网页开发中&#xff0c;HTML结构往往非常复杂&#xff0c;包含大量嵌套的标签和动态内容。这给爬虫技术带来了不小的挑战&#xff0c;尤其是在需要精确提取特定数据的场景下。传统的解析库可能无法有效处理这些复杂的结构&#xff0c;而JavaScript环境下的Chee…

机器学习(五) -- 监督学习(8) --神经网络2

机器学习系列文章目录及序言深度学习系列文章目录及序言 上篇&#xff1a;机器学习&#xff08;五&#xff09; -- 监督学习&#xff08;8&#xff09; --神经网络1 下篇&#xff1a; 前言 tips&#xff1a;标题前有“***”的内容为补充内容&#xff0c;是给好奇心重的宝宝看…

Fast Vision Transformers with HiLo Attention

总结 提出了 HiLo Attention 机制&#xff1a; 该机制将自注意力层分为两部分&#xff1a;Hi-Fi&#xff08;高频注意力&#xff09; 和 Lo-Fi&#xff08;低频注意力&#xff09;。Hi-Fi 捕捉局部细节&#xff0c;通过在局部窗口内应用自注意力&#xff0c;减少了计算复杂度…

图文解析保姆级教程:Tomcat下载、安装、卸载、启动、关闭,解决窗口闪退问题、端口号冲突问题

文章目录 1. 下载2. 安装与卸载3. 启动与关闭4. 常见问题问题1&#xff1a;Tomcat启动时&#xff0c;窗口一闪而过问题2&#xff1a;端口号冲突&#xff08;Tomcat使用的端口被占用&#xff09; 此教程摘选自我的笔记&#xff1a;黑马JavaWeb开发笔记14——Tomcat&#xff08;介…

linux进程处理

1.测试这样没意义&#xff0c;要向后加 wait等待进程结束 1. 2.测试 发送异常结束的信号&#xff0c;通过kill 二、子进程的回收 对于子进程的结束而言&#xff0c;都希望父进程能够知道并作出一定的反应&#xff0c;通过 wait、waitpid 函数可以知道子进程是如何结束的…

人工智能训练师边缘计算实训室解决方案

一、引言 随着物联网&#xff08;IoT&#xff09;、大数据、人工智能&#xff08;AI&#xff09;等技术的飞速发展&#xff0c;计算需求日益复杂和多样化。传统的云计算模式虽在一定程度上满足了这些需求&#xff0c;但在处理海量数据、保障实时性与安全性、提升计算效率等方面…

使用VM创建centos7环境

1、安装VMware Workstation 1.1安装VMware Workstation pro 16 修改自己的安装位置 一直下一步到 1.2激活VMware Workstation pro 16 点击许可证 解压这个压缩包&#xff0c;密码是ai95 之后找到下面文件打开 将生成的许可证码输入到安装VMware Workstation pro 16完成安…

gitk无法打开

1、电脑重装&#xff0c;重新安装git工具后&#xff0c;发现无法打开现有的仓库&#xff0c;报错如下&#xff1a; 搜索网上的信息&#xff0c;显示是目录下没有.git文件夹&#xff0c;但是在xshell查看文件夹是存在的。 然后进行测试git log指令发现也无法进行显示。 然后按…

OJ习题 篇2

&#x1f680;个人主页&#xff1a;奋斗的小羊 &#x1f680;所属专栏&#xff1a;C 很荣幸您能阅读我的文章&#xff0c;诚请评论指点&#xff0c;欢迎欢迎 ~ 目录 &#x1f4a5;1、删除有序数组中的重复项&#x1f4a5;2、数组中出现次数超过一半的数字&#x1f4a5;3、最…

python 怎么样反向输出字符串

python如何反向输出字符串&#xff1f;下面给大家介绍两种方法&#xff1a; 方法一&#xff1a;采用列表reversed函数 class Solution(object):def reverse_string(self, s):if len(s) > 1:reversed_s .join(reversed(s))return reversed_s return s 方法二&#xff1a;采…

爬取图片保存为pdf

本文章想借着爬虫给大家介绍一下图片转pdf,有需要的友友们可以看看参考参考&#xff0c;有帮助到友友的可以收藏&#xff0b;关注。下面以爬取初中7年级数学上册为例给大家演示一下。网址是这个 https://mp.weixin.qq.com/s?__bizMzAxOTE4NjI1Mw&mid2650214000&idx…

10-1 注意力提示

感谢读者对本书的关注&#xff0c;因为读者的注意力是一种稀缺的资源&#xff1a; 此刻读者正在阅读本书&#xff08;而忽略了其他的书&#xff09;&#xff0c; 因此读者的注意力是用机会成本&#xff08;与金钱类似&#xff09;来支付的。 为了确保读者现在投入的注意力是值得…

巨魔商店2.1正式更新,最高支持iOS17.6.1

巨魔商店2.1&#xff0c;来了 不得不说&#xff0c;我此刻的心情&#xff0c;确实有点振奋。一天之内&#xff0c;巨魔连续传来2个大动作。 一个是iOS17.0有了刷巨魔的正式方法&#xff0c;iPhone 15点燃了巨魔的火种。 另一个就是巨魔商店的开发者opa334&#xff0c;突然发…