MySQL数据库远程访问权限如何设置


      MySQL数据库远程访问权限设置

      对于初学者小伙伴来说,我们安装mysql到本地服务,再用一些图形化工具链接。

      一般情况下我们都能链接成功;但是、在模拟真实的环境中我们的数据库不可能直接安装在本地机器上,大多数是在云服务器上,这种情况我们的mysql也不是路边大巴招手即停的,你还是要约的(先买票!);也就是你的帐号不允许从远程登陆,只能在localhost登录,怎么办?

      让我们先登录上mysql

      改表(当然我们要先知道表在哪,适用于整个数据库)

        show databases;#显示所有数据库

        use mysql;#使用mysql数据库

        show tables;#找到这个user表

          select * from user;#查看该表所有信息

          我们能清楚的对应的主机;用户以及用户权限

          1、直接修改
          updateusersethost='%'whereuser='root';#更新root用户的主机访问为任何值
          2、加指定用户以及指定权限
          insertintouser(host,user)values('ip','user');#添加一个用户user地址ip的无权限用户(可以插入新增用户信息时,附带把权限也查进去,执行时会有告警,因为表中有约束,不用深究)

          新增成功,但是没有权限。

          授权

            直接授权(mysql8.0版本会报错,语法分割)

            grantallprivilegeson*.*to'user'@'ip'identifiedby'123456';#授权给主机为ip的user用户开放,所有数据库及对应表的所有权限,并且密码设置为123456(快速简洁)

              直接授权(改-针对新版本)

              createuser‘user'@‘ip'identifiedby‘123456';#创建一个主机地址是ip登录密码是123456的user用户grantallprivilegeson*.*to'user'@'ip';#链接上一步,给他所有权限

                指定授权

                createuser‘mysql'@‘%'identifiedby‘123456';#创建一个主机地址可以时任何地址的登录密码是123456的mysql用户(随时随地,在任何地方的进行登录操作)grantselect,createonmyemployees.*to'mysql'@'%';#设置mysql用户只用myemployees库的查,创建权限
                flushprivilege;#刷新下数据权限

                针对mysql8.0版本以上操作时会报错无法链接;

                8.0版本因为密码规则和语法规则的改变,所以要再次设置

                在相同情况下依次执行以下语句

                alteruser‘mysql'@‘%'identifiedby‘123456'passworeexpirenever;#修改加密规则alteruser‘mysql'@‘%'identifiedby‘123456'mysql_native_passwordby'123456';#再次重置密码flushprivilege;#刷新下数据权限

                上一篇:mysql修改命令如何使用

                下一篇:数据库MySQL性能优化与复杂查询相关的操作方法有哪些


                mysql
Copyright © 2002-2019 飞翔范文网 fhm8.cn 皖ICP备2020016292号-5
温馨提示:部分文章图片数据来源与网络,仅供参考!版权归原作者所有,如有侵权请联系删除!QQ:251442993
热门搜索 网站地图