我正试图在我的MySQL代码中访问一个C++数据库。我有一种感觉,我可能在路上搞砸了一些事情,所以我将概述我采取了哪些步骤,以及我的设置:
#include <mysqlx/xdevapi.h>
#include <iostream>
using namespace mysqlx;
int main() {
try {
Session sess(33060, "user", "password");
}
catch (const Error & err) {
std::cout << err << std::endl;
exit(1);
}
return 0;
}我对端口33060进行了尝试,因为我被告知这是默认的,并且我尝试了端口3306,因为它说端口在XAMPP上。
使用第一个错误消息:"CDK错误:无法建立连接,因为目标机器主动拒绝它。(winsock:10061)“使用第二个错误消息:"CDK错误:意外消息”。
我怀疑有一件事可能是问题,MySQL服务器和C++连接器文件在我的C驱动器上的程序文件中,而XAMPP在其D驱动器的安装文件夹中似乎有一组不同的MySQL文件。我到底是以两个独立的MySQL安装而告终,还是还有什么事情我不明白呢?如果是的话,我该如何处理呢?
发布于 2021-02-05 09:45:32
据我所知,XAMPP现在是基于MariaDB而不是MySQL的。MySQL X DevAPI连接器使用在MariaDB上不可用的X协议(默认情况下,在MySQL服务器实例上端口33060 )。
MariaDB支持经典的MySQL协议(端口3306),但不能通过该协议使用X DevAPI客户端。
因此,要么您找到使用MySQL 8.x服务器的方法,要么需要一个经典的协议连接器。
免责声明:我是MySQL X DevAPI连接器Node.js的主要开发人员
https://stackoverflow.com/questions/66054267
复制相似问题