navicat连接linux系统中mysql-错误:10038

输入 命令 netstat -anp(查看所有的进程和端口使用情况)

 

(注:Local Address一列中: 0.0.0.0 表示监听本地所有ip地址,其他电脑是可以访问的,并且修改ip不受影响。 127.0.0.1 表示只监听本机回环地址,只能本机访问。 x.x.x.x具体 ip地址,是只监听这个ip。修改ip后程序就不能监听了。需要手动修改软件监听地址才可以用)

这里3306 端口写的是ip地址:127.0.0.1 ,故只有本机能够访问*;将其修改成0.0.0.0即可
 

解决办法:

命令vi /etc/mysql/my.cnf:

修改:bind-address = 127.0.0.1->bind-address = 0.0.0.0

重启mysql,再次连接服务:

权限不够,查看用户权限(连接的用户名此处为root),然后修改权限,重启服务,再次连接:

如果还是连接不成功,则需要执行下面的更改密码的操作:

/etc/init.d/mysqld stop 

# mysqld_safe --user=mysql --skip-grant-tables --skip-networking & 

# mysql -u root mysql 

mysql> UPDATE user SET Password=PASSWORD(’newpassword’) where USER=’root’; 

mysql> FLUSH PRIVILEGES; 

mysql> quit 

# /etc/init.d/mysqld restart 

# mysql -uroot -p 

Enter password: <输入新设的密码newpassword> 

mysql> 

再次连接就成功了

原文地址:https://www.cnblogs.com/flzs/p/10743188.html