MySQL客户端访问权限配置

前期文章是关于mysql安装及数据库配置,本次是配置mysql数据库,便于客户端能够访问mysql数据库,下面进行安装步骤介绍,本文以CentOS Linux为例,所操作MySQL版本为5.0.72(其他版本与此类似),高手请飘过。


前提:

        保证MySQL服务是正常运行的

        MySQL数据库的端口要在防火墙中已开启    

        已安装的CentOS Linux发行版系统    

        已经能够运行的MySQL数据库



步骤一:在未配置MySQL之前,根据MySQL服务端的信息,用navicate客户端进行连接测试

    MySQL客户端访问权限配置


步骤二、在MySQL所在机器上登录root用户(方法是类似 mysql -u -p 不详细阐述)


步骤三、切换到mysql库,并查看user表,如图二所示

                use mysql;

                select host,user,password from user;    

            MySQL客户端访问权限配置


步骤四、修改host列的用户,建议修改localhost用户,如图三所示 执行命令如下:

        update user set host = '%' where host = 'localhost';          #修改

        select host,user,password from user;                                #查看修改结果

        flush privileges;                                                                  #清楚缓存


MySQL客户端访问权限配置



步骤五、再次用navicate客户端进行连接测试,如图四所示

MySQL客户端访问权限配置







FAQ (常见问题解答)

为什么只改一条呢?

     因为%代表了任何ip地址均可以访问此mysql库,所以只有一条%记录即可,多条无意义,如需根据不同的ip、不同用户有不同的权限访问,可设置为多条。


为什么只是修改某条user记录,而不是insert一个用户呢?

       因为新增的用户,相关权限是没有的,如果新纪录的各项都设置为Y,则权限过大,如果新纪录的各项都设置为N,则权限过小,远程登录之后,无法进行其他操作。