Python MySQL连接。在虚拟机上运行
我正在尝试使用python建立与本地运行的MySQL的连接。 我使用以下代码Python MySQL连接。在虚拟机上运行,python,mysql,virtual-machine,mysql-python,Python,Mysql,Virtual Machine,Mysql Python,我正在尝试使用python建立与本地运行的MySQL的连接。 我使用以下代码 import MySQLdb db = MySQLdb.connect("localhost","username","password","dbname") 我在虚拟机上工作,在虚拟机上运行Python和MySQL。我无法接通 我犯了这个错误 OperationalError: (2003, "Can't connect to MySQL server on 'localhost' (10061)") 我曾尝试提
import MySQLdb
db = MySQLdb.connect("localhost","username","password","dbname")
我在虚拟机上工作,在虚拟机上运行Python和MySQL。我无法接通
我犯了这个错误
OperationalError: (2003, "Can't connect to MySQL server on 'localhost' (10061)")
我曾尝试提供虚拟机的ip地址来代替本地主机,但仍然没有成功。我也尝试指定端口号。
连接是否因为在VM上运行而有所不同???当您尝试从命令行直接连接到mysql数据库时,它是否工作 你的虚拟机运行的是什么操作系统?如果是Unix,那么是否有mysqld进程正在运行 无论如何,这可能与Python无关。你的代码snipppet看起来不错。您只需要解决连接问题。查看本页,了解如何找到问题根源的详细信息
我希望这会有所帮助。假设您的客户端和mysql服务器与您所说的在同一台机器上,并且mysql服务器正在运行,您可以尝试以下操作 在您的
my.cnf
中,您可以在linux中的/etc/mysql/my.cnf
中找到,或者在windows上检查mysql安装以查找my.cnf
查找bind address
指令并设置虚拟机主机的IP地址。如果在linux上,您可以在windows上使用ifconfig
或ipconfig
查看虚拟机IP
如果尚未允许远程客户端,您也可以尝试注释掉跳过网络行
重新启动mysqld
/etc/init.d/mysqld restart
在基于debian的发行版上,service mysqld restart
for Redhat或在windows上重新启动mysql服务您是否能够使用mysql
命令行工具连接到它?10061意味着连接被拒绝
确保您的mysql守护程序/服务已启动up@VarinderSinghMySQL服务正在运行,我已经验证过了。@Wooble我还没有试过。但是你认为这会有什么不同吗?好吧,如果命令行工具也不能连接,那几乎肯定不是Python的问题。我正在运行WindowsServer2008R2。我已经在命令提示符下尝试过了,但是没有任何区别。你说没有区别是什么意思?您是否能够使用mysqld从命令提示符连接到sql server数据库?看看这些链接,了解我们的建议。。。