db = MySQLdb.connect(host="machine01", user=local_settings.DB_USERNAME, passwd=local_settings.DB_PASSWORD, db=local_settings.DB_NAME)
连接到一个数据库,但我从machine02
这样做的,我认为这将仍然有效,但它不。我得到
_mysql_exceptions.OperationalError: (1045, "Access denied for user 'test_user'@'machine02' (using password: YES)")
结果。但是,如果我简单地ssh到machine01
并执行相同的查询,它工作得很好。是不是host
点能够指定MySQL数据库的位置,并能够从任何其他主机查询它,而不必跳转到那里进行查询?
这确实是'host'的要点,但服务器需要接受来自远程主机的连接。我建议检查此服务器配置 – Finwood 2015-03-31 15:27:56
DB是否在默认端口(3306)上侦听?你能通过这个端口从machine02 telnet到machine01吗? – javajavajava 2015-03-31 15:32:27
这似乎是问题所在 - 我本来预料会得到一个连接拒绝错误,而不仅仅是在错误的主机上进行查询。 – drjrm3 2015-03-31 15:35:48