gpt4 book ai didi

Cocoa 应用程序中的 MySQL 客户端

转载 作者:行者123 更新时间:2023-11-28 07:54:01 25 4
gpt4 key购买 nike

我正在尝试从 macOS 应用程序(用 Swift 编写)连接到远程 MySQL 数据库。

我已将 MySQL C 库 (libmysqlclient.18.dylib) 嵌入到应用程序中,并使用模块映射导入 header 。一切似乎都能正确编译和链接。

出于某种原因,我无法让客户端实际连接到数据库。 mysql_real_connect() 产生错误 2003:无法连接到 [host] 上的 MySQL 服务器。凭据正确,但它不会连接到任何数据库(远程或本地主机)。

作为测试,我使用 Swift Package Manager(命令行应用程序)而不是 Cocoa 应用程序创建了一个几乎相同的应用程序。 MySQL C 库是使用完全相同的过程嵌​​入的,它完全按照您的预期连接到数据库。

所以问题不知何故源于 Cocoa 应用程序。命令行应用程序和 Cocoa 应用程序之间有什么区别会阻止我连接到数据库吗?也许有什么东西阻止了出站请求?

PS - 我还将 App Transport Security 设置为 Allow Arbitrary Loads,但这没有帮助。

最佳答案

解决方案

我猜这是一个沙箱限制,所以你只需要取消应用程序的沙箱。

只需编辑 AppName.entitlements 并将 App Sandbox 设置为 No

关于Cocoa 应用程序中的 MySQL 客户端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48820215/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com