我正在使用以下命令运行 mysql 服务器:
mysqld --no-defaults --user=root --port=3310 --bind-address=0.0.0.0 --skip-grant-tables &
我的理解是,此命令以 root 用户身份启动 mysql 服务器守护程序,它将监听所有接口并允许所有用户访问所有数据库。请注意,我使用了 --no-defaults,因此 mysql 不会读取任何配置文件。
我正在尝试使用以下命令从另一台机器连接到服务器:
mysql -p -u root -h MYSQL_SERVER_IP --port 3310
但我收到了以下经典错误:
ERROR 2003 (HY000): Can't connect to MySQL server on 'MYSQL_SERVER_IP' (111)
我使用“iptables -F”关闭了服务器和客户端上的所有规则。此外,服务器可以从客户端 ping 通,反之亦然。
我错过了什么?
答案1
您的命令
mysql -p -u root -h MYSQL_SERVER_IP -p 3310
是不对的,应该是
mysql -p -u root -h MYSQL_SERVER_IP --port 3310
如果没有 ,--port 3310
客户端将尝试连接到默认端口3306
。