如何在 macOS 上使用 freeTDS 连接到本地 mysql
how to connect to local mysql using freeTDS on macOS
我不明白为什么 mysql 很难连接...
我正在按照一些指南使用 python3.8
连接到 macOS 15 上的 mysql 本地服务器
到处都说要使用 pyodbc
、unixodbc
和 freetds
。
我正在阅读所有文档,但我似乎无法弄清楚为什么我无法连接到我的本地 mysql 服务器。
(我可以用 mysql
完美连接到 mysql)。
我有 MySQL workbench 运行 并且我正在读取其中的值。
它有:
- 主持人:my.host.server
- 套接字:some.socket
- 端口:port_number
- 版本:mysql.version
- 编译为:blah blah
- 等...
我已经阅读了一些文档和指南,它告诉我应该确保我可以使用 tsql -H <yourdbhost> -p <yourdbport> -U <yourusername> -P <yourpassword>
连接到我的 mysql 服务器
所以我试试 tsql -H my.host.server -p port_number -U <yourusername> -P <yourpassword>
而且我不断收到
locale is "en_US.UTF-8"
locale charset is "UTF-8"
using default charset "UTF-8"
Error 20002 (severity 9):
Adaptive Server connection failed
Error 20002 (severity 9):
Adaptive Server connection failed
There was a problem connecting to the server
我阅读了文件,上面写着
"If you get message 20009, remember you haven't connected to the machine. It's a configuration or network issue, not a protocol failure. Verify the server is up, has the name and IP address FreeTDS is using, and is listening to the configured port."
嗯,,,我做错了什么?只是为了完整性检查,我还下载了 mysql 服务器东西以确保我的服务器确实启动并且 运行。我还尝试使用 workbench 停止我的服务器,但它甚至不允许我这样做,因为它需要设置一些脚本才能关闭...
也说
"Named instances provide another way for connections to fail. You can verify the instance name and the port the server is using with tsql -L."
所以我尝试用 tsql -L -H my.host.server
进行测试,它只挂了 2-3 分钟,returns 什么也没有。我尝试 tsql -L -H my.host.server:port_number
,同样的事情。
我尝试 curl my.host.server:port_number
,它返回给我类似 sha256 加密的等等等等不允许的二进制内容。所以我怀疑我的 host.server 确实还活着。
我现在真的卡住了。对不起,如果我听起来很沮丧..
任何帮助将不胜感激。
谢谢。
freeTDS 仅适用于 Microsoft sql 服务器。
我尝试连接的方法是尝试连接到 Microsoft sql 服务器。请注意。
我不知道 ms sql 服务器与 sql 服务器不同。
任何试图连接到 sql 服务器的人,我发现这个 guide 非常有用!
我希望有一天这会对某人有所帮助。
FreeTDS 适用于 Microsoft SQL 服务器或 Sybase 数据库,不适用于 MySQL。虽然您可以将 pyodbc
和 unixODBC
与 MySQL 一起使用,但使用专门为 MySQL 制作的本机 Python 驱动程序可能会更好。我建议使用 mysqlclient
,因为它是 Django 推荐的,Django 是 Python:
最流行的 Web 框架
https://pypi.org/project/mysqlclient/
祝你好运!
我不明白为什么 mysql 很难连接...
我正在按照一些指南使用 python3.8
到处都说要使用 pyodbc
、unixodbc
和 freetds
。
我正在阅读所有文档,但我似乎无法弄清楚为什么我无法连接到我的本地 mysql 服务器。
(我可以用 mysql
完美连接到 mysql)。
我有 MySQL workbench 运行 并且我正在读取其中的值。 它有:
- 主持人:my.host.server
- 套接字:some.socket
- 端口:port_number
- 版本:mysql.version
- 编译为:blah blah
- 等...
我已经阅读了一些文档和指南,它告诉我应该确保我可以使用 tsql -H <yourdbhost> -p <yourdbport> -U <yourusername> -P <yourpassword>
连接到我的 mysql 服务器
所以我试试 tsql -H my.host.server -p port_number -U <yourusername> -P <yourpassword>
而且我不断收到
locale is "en_US.UTF-8"
locale charset is "UTF-8"
using default charset "UTF-8"
Error 20002 (severity 9):
Adaptive Server connection failed
Error 20002 (severity 9):
Adaptive Server connection failed
There was a problem connecting to the server
我阅读了文件,上面写着
"If you get message 20009, remember you haven't connected to the machine. It's a configuration or network issue, not a protocol failure. Verify the server is up, has the name and IP address FreeTDS is using, and is listening to the configured port."
嗯,,,我做错了什么?只是为了完整性检查,我还下载了 mysql 服务器东西以确保我的服务器确实启动并且 运行。我还尝试使用 workbench 停止我的服务器,但它甚至不允许我这样做,因为它需要设置一些脚本才能关闭...
也说
"Named instances provide another way for connections to fail. You can verify the instance name and the port the server is using with tsql -L."
所以我尝试用 tsql -L -H my.host.server
进行测试,它只挂了 2-3 分钟,returns 什么也没有。我尝试 tsql -L -H my.host.server:port_number
,同样的事情。
我尝试 curl my.host.server:port_number
,它返回给我类似 sha256 加密的等等等等不允许的二进制内容。所以我怀疑我的 host.server 确实还活着。
我现在真的卡住了。对不起,如果我听起来很沮丧.. 任何帮助将不胜感激。
谢谢。
freeTDS 仅适用于 Microsoft sql 服务器。 我尝试连接的方法是尝试连接到 Microsoft sql 服务器。请注意。
我不知道 ms sql 服务器与 sql 服务器不同。 任何试图连接到 sql 服务器的人,我发现这个 guide 非常有用! 我希望有一天这会对某人有所帮助。
FreeTDS 适用于 Microsoft SQL 服务器或 Sybase 数据库,不适用于 MySQL。虽然您可以将 pyodbc
和 unixODBC
与 MySQL 一起使用,但使用专门为 MySQL 制作的本机 Python 驱动程序可能会更好。我建议使用 mysqlclient
,因为它是 Django 推荐的,Django 是 Python:
https://pypi.org/project/mysqlclient/
祝你好运!