主机A正在运行mysql服务器。在A上,我可以连接到数据库:
hostA: mysql -p
我已经允许用户X从主机B连接。我可以通过以下方式连接起来:
hostB: mysql -h A --protocol=TCP -p -u X
但是,我无法通过TCP从A连接到A:
hostA: mysql -h 127.0.0.1 --protocol=tcp -p
上面写着:
ERROR 2003 (HY000): Can't connect to MySQL server on '127.0.0.1' (111)
我试过以下地址:
localhost, 127.0.0.1,
在我工作的地方,我们有一个开发服务器,一个生产服务器,我们现场管理。当我试图远程连接到开发服务器上的MySQL时,我会得到以下错误:
ERROR 2003 (HY000): Can't connect to MySQL server on '***' (113)
但是,我可以在生产服务器上成功地远程连接到MySQL。
这两台服务器都有相同的配置文件。(/etc/my.cnf)
nmap -p 3306 server-name显示,端口3306在生产中是开放的,但在开发中是关闭的,但是iptables -L -n在这两台服务器上显示相同的规则,而且它们都没有端口3306的
这个应用程序中的python是从docker容器中运行的。容器在网络模式下运行:"host“。
我很难通过python包sqlalchemy连接到MySQL数据库。我得到以下错误。
OperationalError:(OperationalError) (2003年,“无法连接到'127.0.0.1‘(111)上的MySQL服务器”)无
以下终端命令工作正常
mysql -h 127.0.0.1 -u my_user --password='password' db -e "SHOW TABLES;"
enter code here
也许
当我尝试连接到一个正在运行并转发到我本地TCP的docker MySQL时,我得到了以下答案
mysql -u root -pPASSWORD
mysql: [Warning] Using a password on the command line interface can be insecure.
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
但当我使用mysql -u root -pPASSWORD -h127.0.0.1时
我试图在Granada查询中实现一个MySQL过程(使用if/语句)。唯一的问题是它不允许我创建我的过程并从同一个查询中调用它.
错误
db query error: Error 1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'CALL tester(true)' at line 44
我确信这个问题与我的语法无关,但下面是查询的外观:
CREAT