我不确定我的 mysql(在 dedi 服务器上运行)是否有问题。我可能配置错误,或者使用了错误的端口进行连接,或者它被阻止了。我对 linux ubuntu 还不太熟悉,所以如果您能帮助我,我将不胜感激。另外,抱歉我的英语不好。
sudo netstat -tap | grep mysql
没有给我任何输出,这很奇怪,它不应该说端口 mysql 已打开吗?
service mysql status
mysql start/running, process 22992
使用 putty,我也可以登录 mysql,mysql -u root -p
并且运行正常。通过 ssh 登录本地主机时使用哪个端口?
我还可以从我的计算机的 7777 端口登录到 phpmyadmin,这是 mysql localhost 使用的相同端口吗?
我在游戏服务器上使用了一个 java 插件,它应该连接到 mysql,但却失败了。配置文件:
host: 127.0.0.1
port: tried 3306 and 7777
user: root
pass: *****
“com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:通信链接失败
最后一个成功发送到服务器的数据包是在 0 毫秒之前。驱动程序尚未收到来自服务器的任何数据包。
/etc/mysql/my.cnf:
[client]
port<--><------->= 3306
[mysqld]
user = mysql
port = 3306
bind-address = 127.0.0.1
sudo netstat -tap | grep 3306
没有输出
通过网页浏览器访问 phpmy adminsudo netstat -tap | grep 7777
tcp 0 0 *:7777 *:* LISTEN 1566/apache2
答案1
出于安全原因,您的 MySQL 服务器未配置为默认通过网络访问。请参阅配置文件中的帮助以配置服务以通过网络访问。
游戏服务器看不到 MySQL 服务器的原因是游戏服务器尝试通过网络访问数据库;它没有尝试localhost
。如果你这样做了,mysql -h [ip-address] -u root -p
你也不会获得连接。请参阅这里。