telnet 连接不上linux上mysql
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了telnet 连接不上linux上mysql相关的知识,希望对你有一定的参考价值。
在主机winxp下 dos telnet 192.1680.210 3306(虚拟机linux)显示一句乱码,接在显示跟主机失去连接、、求高手解答
参考技术A 1.你xp里面如果装了mysql的话,可以通过mysql直接访问,参考命令格式如下:mysql
-h
192.168.0.210
-u
username
-p
2.用telnet时不是直接去telnet
3306端口的,那跟你telnet
www.baidu.com
80
效果一样,你的键盘输入不符合服务端定义的协议,只好把你断开了。要用telnet基本只能先登陆到linux系统,然后再利用里面的mysql进行登陆。命令行同第一种方式。
linux中MySQL本地可以连接,远程连接不上问题
1.网络或防火墙问题
(1)检查网络直接ping你的远程服务器,ping 182.61.22.107,可以ping通说明网络没问题
(2)看端口号3306是不是被防火墙挡住了,telnet 182.61.22.107 3306
下图这样就是防火墙挡住了3306端口不允许访问
配置防火墙,开启3306端口
vi /etc/sysconfig/iptables //防火墙配置
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT //允许3306端口通过
service iptables restart //重启防火墙
配置如下:
2.MySQL配置
在你开启防火墙以后发现还是telnet失败,我去,报错如下:
这里的原因是因为你的数据库只允许root用户在本地登录,你可以设置允许访问的用户跟地址
(1)进入数据库查看用户表
mysql -u root -p //登录数据库
use mysql //进入mysql数据库
select Host,User from user; //查看可以访问数据库的ip
结果如下:
(2)设置可以访问的ip
update user set host=\'%\' where host=\'localhost\'; //允许所有访问
flush privileges; //刷新生效
当然也可以只允许一些ip访问,或者ip段访问:GRANT ALL PRIVILEGES ON *.* TO \'root\'@\'182.61.*.*\' IDENTIFIED BY \'password\' WITH GRANT OPTION; //允许182.61段在root账号登录
以上是关于telnet 连接不上linux上mysql的主要内容,如果未能解决你的问题,请参考以下文章