上一篇文章,小编带大家学会了在Ubuntu14.04中安装MySQL,没有来得及上课的小伙伴们可以戳这篇文章:如何在Ubuntu14.04中安装mysql,今天给大家分享一下,如何简单的配置MySQL,可以实现远程连接,具体的教程如下。
1、mysql的配置文件在/etc/mysql/my.cnf中,如下图所示。配置文件中的内容很丰富,我们可以看到mysql的用户、监听端口号、数据文件存储目录等。
2、通过cat命令,查看my.cnf中的内容。如下图所示,在my.cnf配置文件中,bind-address默认的IP为127.0.0.1,表示只限于本机IP进行连接。如果没有配置mysql,则利用Navicat或者其他远程连接工具是无法连接到该数据库的。
3、为了让外边的其他的IP正常访问到,需要设置bind-address对应的IP为0.0.0.0。使用vi或者vim,编辑my.cnf配置文件,配置完成之后如下图所示。
4、更改完配置文件my.cnf之后,需要对mysql进行重启,输入命令:sudo service mysql restart,如下图所示。
输入进程查看命令,可以看到mysqld进程已经存在,说明mysql启动成功。
5、接下来,通过Navicat来远程连接数据库。通过ifconfig查看IP。可以看到IP地址为192.168.255.131。
6、打开Navicat,然后点击新建连接,如下图所示。
7、点击“连接测试”,弹出下图界面。说明连接测试失败,原因是我们还尚未给mysql远程连接授权。Mysql的权限问题是十分严谨的,即便我们已经开放了IP地址,但是我们尚未给root用户授权,因为还是连接失败。也就是说,我们给root用户授权之后,日后在IP地址为非127.0.0.1的情况下,也能够正常访问数据库。如果没有设置的话,默认除了本地localhost连接过去的连接可以被接受之外,其他外部的IP连接过去是无效的。尽管它们的IP是在0.0.0.0上进行绑定的,但是仍然没有权限。
8、接下来,我们继续进入到Ubuntu中的mysql。
9、输入远程授权命令,语法模板如下:grant all privileges on 库名.表名 to '用户名'@'IP地址' identified by '密码' with grant option;
这里,小编根据自己的情况,在Ubuntu命令行中输入命令: grant all privileges on *.* to 'root'@'% ' identified by '123456' with grant option;
*.*是正则表达式,代表对所有表进行授权;root代表root用户;%代表所有的外部IP;123456代表密码。
如下图所示:
10、授权之后,输入命令:“flush privileges;”以刷新权限,如上图所示。之后便可以退出mysql数据库了。
11、此时,再去Navicat中再次尝试连接测试,如下图所示。此时可以看到测试连接成功。
12、点击确定,之后在Navicat主页面中可以看到IP地址为192.168.255.131的数据库已经在Navicat中了。
13、双击左侧192.168.255.131数据库,可以看到数据库信息。之后就可以在Navicat中远程操作数据库了,与Ubuntu中的数据库是同步的。
至此,在Ubuntu中配置mysql和设置mysql远程连接已经完成,小伙伴们学会了吗?
--- End ---