我的环境:我的mysql服务器安装在虚拟机的ubuntu系统下,客户端安装在主机win7环境下,我在win7下安装了workbench图像化界面,然后建立远程连接,一直无法成功,如图:
然后就开始寻找解决办法.
1:登录mysql。
首先在虚拟机的命令行,输入:mysql –uroot(如果曾经设置过密码,就是输入 mysql –uroot –p,回车然后输入密码,注意u与root之间没有空格)就进入到mysql了。
2:然后要允许用户从其他机器登入mysql。
就是在mysql下输入:grant all privileges on *.* to root@"%" identified by"yxmwyl";
这句话的意思是允许root用户从任意机器上登入mysql。
3:输入 quit 退出mysql,然后输入:sudo gedit/etc/mysql/my.cnf
在较老的版本中:将>skip-networking改成#skip-networking
在新的版本中将:>bind-address=127.0.0.1改成bind-address=0.0.0.0
这样就允许其他机器访问mysql了。
4:然后重启mysql:输入:sudo/etc/init.d/mysql restart.
5:再去workbench图形界面点击newconnection,然后出现建立连接的界面,然后填入
Hostname填写虚拟机的ip,端口默认都是3306,不需要改,connection name可以自己随便起,username写root,然后填入密码,点击test connection按钮,出现
:
说明建立连接成功。
然后点击ok便可以对远程虚拟机上的数据库进行操作,也可以在win7的命令行下,输入mysql.exe的目标路径
复制目标粘贴到记事本中,内容如下(每个人的根据安装路径不同,会不一样),
然后复制"D:\ProgramFiles\MySQL\MySQL Server 5.6\bin\mysql.exe",粘贴到命令行,然后在后面输入-h 远程主机的ip –uroot –p;回车然后输入密码。
如图:
我是由于在远程机器上设置的权限门槛比较低,所以可以直接进去,如果权限门槛较高,可能不能直接进入可能还会遇到问题,自己再去查一下相关资料吧。