用Mysql GUI tool 链接 Mysql 错误 2003 的解决办法

今天在Ubuntu下安装了mysql server, 然后试图在winxp下面用Mysql GUI tool链接,结果总是失败,显示错误号为2003.

下面是探索过程:

1.首先怀疑是Ubuntu下面有防火墙, 在winxp下面ping可以ping通, Ubuntu下面执行 "ufw status" 显示也是inactive的;

说明和防火墙没有关系。

2. 怀疑mysql 没有起来, 在Ubuntu下面执行"ps -ef | grep mysql"显示 mysql 正常;

3. 没办法了,开始从网上搜索, 找到了解决办法:

  1)mysql -uroot -p, 输入密码后进入mysql提示符:

   mysql> use mysql mysql> select host, user from user; +---------------+------------------+ | host | user | +---------------+------------------+ | 127.0.0.1 | root | | localhost | debian-sys-maint | | localhost | root | +---------------+------------------+

   从显示结果看出只允许本地用户登录, 所以需要加入允许的IP地址用户;

   mysql> GRANT ALL on *.* to [email protected] IDENTIFIED BY 'password'; mysql> flush privileges; mysql> select host, user from user; +---------------+------------------+ | host | user | +---------------+------------------+ | 127.0.0.1 | root | | 192.168.0.105 | root | | localhost | debian-sys-maint | | localhost | root | +---------------+------------------+   

  本以为现在从IP地址为192.168.0.105的用户可以用root和密码password链接到mysql了,可是链接还是出现2003的错误号;

于是继续搜索;

2) su到root帐号,然后:

$ vi /etc/mysql/my.cnf

找到 bind-address           = 127.0.0.1

改为 bind-address           = 192.168.0.102

改完保存后, 执行 service mysql restart 重启mysql, 再次链接搞定。

 

这里解释一下bind-address, 这个地址mysql监听的ip地址, 默认是127.0.0.1,也就是mysql只在回环地址上(也就是lo上)监听,所以外面的ip地址链接不进来, 修改后的ip地址192.168.0.102是mysql server主机上的对外ip地址,也就是和外界通信的那块网卡eth0,这样才能监听到外部网络进来的连接请求。

修改前执行:netstat -na | grep 3306结果为:

tcp        0      0 127.0.0.1:3306      0.0.0.0:*               LISTEN

修改后执行:netstat -na | grep 3306结果为:
tcp        0      0 192.168.0.102:3306      0.0.0.0:*               LISTEN

 

顺便说一下,今天su到root的时候总是失败,这里是问题的原因:

刚刚在vmware里装好了ubuntu8.04,由于Ubuntu root用户在默认情况下是禁用的,不允许用root登陆,而有很多时候的操作又需要有root用户的权限。要使用root帐户登陆,遵循以下步骤:

1、首先重置root密码:

      利用现有管理员帐户登陆Ubutu,在终端执行命令:sudo passwd root,接着输入密码和root密码,重复密码。再重新启动就可以用root登陆。

2、允许以root用户登录:

      默认情况是不允许用root帐号直接登陆图形界面的。这可以通过修改/etc/gdm/gdm.conf文件来允许root直接登陆,在该文件中找到 AllowRoot=false 将其改为 AllowRoot=true 切换用户就可以了。

注:gdm.conf默认是只读属性,修改前请先使用sudo chmod 777 /etc/gdm/gdm.conf 将文件权限设置为为777。

                                      -----http://hi.baidu.com/zhulei632/blog/item/e85050432c5429149213c671.html

 

你可能感兴趣的:(vmware,mysql,server,ubuntu,user,防火墙)