Ubunt下安装mysql及遇到的问题(怎么解决mysql远程连接报10038的错误)

来源:互联网 发布:国产psp4000淘宝 编辑:程序博客网 时间:2024/05/26 09:54

最近在虚拟机上倒腾mysql,分为两个步骤,首先安装mysql、然后使用mysql

我使用的环境是ubuntu-14.04.2-desktop-i386.iso,安装mysql是很简单的。

1、安装和启动mysql

使用命令:

sudo apt-get install mysql-server 

对的,不要怀疑,就是这么简单


启动mysql进程 : sudo /etc/init.d/mysql start

关闭mysql进程: sudo /etc/init.d/mysql stop

重启mysql进程: sudo /etc/init.d/mysql restart


2、使用mysql 
使用navicate客户端连接mysql,然后就发现遇到一个10038的错误,在windows下使用telnet ip 3306发现端口没有开放
备注:(在win7中默认没有telnet命令,需要自己开通,开通方法:
进入控制面板->程序 ->程序和功能 ->  打开或关闭Windows 功能->在打开的功能列表中勾选telnet 服务器和 telnet客户端即可)
在Linux中使用netstat -an |grep 3306
可以看到 tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN 的信息,这个代表3306端口只是开放给本地使用,没有开通远程连接
那么怎么开通这个端口呢?

进入到mysql的安装目录/etc/mysql ,找到my.cnf控制文件,使用sudo vim my.cnf 编辑,在文件中找到
(如果是mysql5.7版本,目录配置文件在/etc/mysql/mysql.conf.d/mysqld.cnf)
#
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure
#bind-address   
这几行下面有bind-address            = 127.0.0.1
将其ip修改为能够被访问的ip,例如:bind-address            = bind-address            = 192.168.128.131
重启mysql服务器(上述启动和关闭进程命令)之后,再使用netstat -an | grep 3306
显示如下:
tcp        0      0 192.168.128.131:3306    0.0.0.0:*               LISTEN

再通过navicate连接,发现已经能顺利连接上mysql服务器

0 0
原创粉丝点击