码迷,mamicode.com
首页 > 数据库 > 详细

今日份知识分享:mysql创建远程登入用户

时间:2020-12-19 12:11:46      阅读:1      评论:0      收藏:0      [点我收藏+]

标签:using   方便   通过   ica   get   用户   是你   navicat   mysql   

首先,先创建一个用户,这步应该很简单。

用root账户(或者其他有权限的账户)登录,

mysql -u root -p     回车

输入密码    回车

 

 

技术图片
 

切换到mysql表

在user表里插入一个用户就OK

mysql> use mysql

Database changed

mysql> insert into user(host,user,password) values(‘localhost‘,‘test‘,password(‘123456‘));

这样就创建了一个名为test的用户

然后给该用户授权

 如果你在学习C/C++的过程中遇到了问题,可以来加入小编的企鹅圈问小编哦~小编很热情的(●’?’●)

授权还是得谨慎操作,尤其是你建这个用户不是给自己用,而是公共用的时候,如果赋予了很大的权限,有可能一个不熟悉操作的人就把数据库给毁了。授予该用户必须的权限即可。尤其是权限表的改写权限,最好不要给除root用户外的其他任何用户。

这里建一个数据库,为了方便这里把该库所有的权限给test,即得赋权完需要刷新下权限,使之生效。

mysql> create database testDB;

Query OK, 1 row affected (0.04 sec)

mysql> grant all privileges on testDB.* to test@localhost identified by ‘123456‘;

Query OK, 0 rows affected (0.00 sec)

mysql> flush privileges;

Query OK, 0 rows affected (0.00 sec)

以上是教科书式的方法,事实上也确实创建了一个用户,我们也可以试着登录下。

接下来我们远程连接一下看看。

以Navicat for mysql作为工具为例。

却发现报1045的错误

 

技术图片
 

1045 -Access denied for user ‘root‘@‘182.110.4.196‘(using password:YED)

难道上面介绍的操作有错吗?教科书式的操作,能错到哪去呢。

嗯,是的,操作并没有问题,问题出在上面我们是创建了一个本地用户,所以我们用命令窗口该用户是可以登录的。那怎么把本地用户允许远程登录呢?

两种方法。

方法一:把允许远程访问的用户host改为%,比如上面说到的test用户,update一下就可以了,就不截图了。

注:为什么是%,其实开始博主也纳闷了一下。再一想就明白了,%在mysql中是通配符的,host改为%即表示任意主机都可以通过test及其密码来访问数据库。

方法二:还是授权

mysql> GRANT ALL PRIVILEGES ON testDB.* TO ‘test‘@‘%‘ IDENTIFIED BY ‘123456‘ WITH GRANT OPTION;

Query OK, 0 rows affected (0.00 sec)

mysql> FLUSH   PRIVILEGES;

Query OK, 0 rows affected (0.00 sec)

这回再试试,连接一下,轻松连上。

 

技术图片
 

再回到刚那个%,通配符通配符,即可以匹配某一类。那我不想给所有IP都访问数据库的权限是不是可以多点限制?比如我只想给192.168.1.*的用户授权,那么就可以把host改为192.168.1.%或者授权语句改为

GRANT ALL PRIVILEGES ON testDB.* TO ‘test‘@‘192.168.1.%‘ IDENTIFIED BY ‘123456‘ WITH GRANT OPTION;

嗯,就是这么用。一点点操作,一个可远程连接的用户就建好了。

今日份知识分享:mysql创建远程登入用户

标签:using   方便   通过   ica   get   用户   是你   navicat   mysql   

原文地址:https://www.cnblogs.com/zuishuaideou/p/14133828.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!