如今在不少的互联网公司对于mysql数据库的使用已是不可阻挡的趋势了,因此常常咱们在项目开始的时候就会作的事情就是找一台Linux服务器,到上面去安装个mysql,而后在开始咱们的数据表的导入工做,可是咱们不能一直占据着服务器的远程链接啊,因此常常咱们会采用远程工具去进行数据库的操做处理,可是咱们也会遇到以下情况:html
1
|
MYSQL CONNECT ERROR – 1130:Host ’202.43.**.**’ is not allowed to connect to this MySQL server”
|
出现上面拒绝链接的根本缘由是由于在建立mysql帐户时限制链接帐户远程登陆的,也就是说:除了当前mysql所在的安装服务器外,其余的ip(主机)都是不容许访问的,尽管你的用户名和密码是正确的;其实不是MySQL默认不支持远程,是MySQL的默认用户root默认不支持远程,说白了,也就是权限问题,root用户的Host默认就是127.0.0.1(localhost)最简单的方法就是从新建了一个用户,支持远程访问,而不用去修改root的权限,建议这样作,可是若是真的是须要采用root远程操做嘛也不是没有办法,下面提供两种方案去解决:mysql
①在/etc/mysql/my.cnf中的 [mysqld] 段注释掉bind-address = 127.0.0.1sql
②用mysql -uroot -p 登录mysql,而后采用如下方法开启远程访问权限;数据库
1
2
3
4
5
|
#mysql -u root -p
#*******(密码,默认的密码是空)
mysql>use mysql;
mysql>update user
set
host =
'%'
where user =
'root'
;
mysql>flush privileges;
|
咱们执行代码以后咱们能够看到咱们的root用户对应的host是%,表示容许全部ip链接,以下图:bash
因为在上面的讲解过程当中我发现对于有些mysql的用户来讲对于mysql的默认密码为空这个不是很在乎,因此这里对你们给个提醒就是刚刚安装的mysql,在咱们安装结束以后记得要清除空用户并及时修改密码,下面简单记录这两个过程,简单以下:服务器
来源:MySQL数据库的发布版本知识讲解 http://www.gooln.com/video/2211.htmlide
1
2
3
4
5
|
mysql -u root -p
mysql>
select
user,host,password from mysql.user;
mysql>drop user
''
@localhost;
mysql>update mysql.user
set
password = PASSWORD(
'*********'
) where user=
'root'
;
mysql>flush privileges;
|
执行过程以下:工具