如何测试MYSQL-Connector-Python是否正常工作?

问题描述 投票:0回答:1

情况

我正在尝试解决 Python 和 MYSQL 之间的问题。我发现自己暂时被迫在 Windows 11 机器上进行开发。我不确定这是否就是我遇到问题的原因,因为我在 *NIX 机器上从未遇到过问题。我本机使用 MYSQL 8.0.40 和 Python 3.13 64 位,并通过 PIP 安装 MYSQL-Connector-Python。

问题 当我尝试连接并创建、编辑、查看数据库或表时,我没有收到任何错误,但也没有采取任何操作。基本上,我已经确认我可以从Python连接到MYSQL,但似乎没有执行任何SQL语句。

行动 我从 MS 安装程序和 Python 安装了 MYSQL,没有出现任何问题。我使用 pip install mysql-connector-python 安装连接器没有问题。

我正在使用测试示例来连接到现有数据库:

import mysql.connector

cnx = mysql.connector.connect(user='user', password='pass',
                              host='localhost',
                              database='testdb')

cnx.close()

当我运行脚本时,没有错误,所以我认为它可以工作。我尝试使用各种 IP 更改主机并收到超时错误,因此我假设它正在连接。

然后我尝试使用以下命令创建一个新的数据库:

import mysql.connector

mydb = mysql.connector.connect(
  host="localhost",
  user="yourusername",
  password="yourpassword"
)

mycursor = mydb.cursor()

mycursor.execute("CREATE DATABASE mydatabase") 

没有错误,但没有创建数据库。我已经用现有数据库尝试过此操作并创建了一个表,但没有成功。我已经检查了权限,并且我使用了MYSQL root用户和具有完全权限的admin用户。

故障排除 我怎样才能看到正在发生的事情?例如,是否有一个日志可以解释这里发生的事情。这是 Win 操作系统上权限的常见问题吗?如果有人可以建议可能发生的事情,我们将不胜感激。

任何帮助将不胜感激。

python mysql-connector mysql-connector-python
1个回答
0
投票

我仍然不知道为什么,但这个方法有效:

import mysql.connector

cnx = mysql.connector.connect(user='scott', password='password',
                              host='127.0.0.1',
                              database='employees')
cnx.close()

但是这个方法不会:

from mysql.connector import (connection)

cnx = connection.MySQLConnection(user='scott', password='password',
                                 host='127.0.0.1',
                                 database='employees')
cnx.close()

令我困惑的是,在 MYSQL Connector/Python 开发人员指南中,它指出这两种方法都有效,并且首选第一种方法,当然是我的运气。

任何想法为什么,我想学习、修复和解决。

谢谢,

© www.soinside.com 2019 - 2024. All rights reserved.