mysq,功能强大的关系型数据库,它的用户管理在开发过程中当然也尤其重要,接下来就看看mysql的用户管理

1.登录数据库

mysql -uroot -p 回车

输入密码... 回车

2.登录成功后,切换数据库

mysql>use mysql;

3.查看当前用户

mysql>select user,host from user;

这里只列举了两个字段,这张表的字段很多,一般比较关注的就这几个:

host:访问主机

user:访问用户名

plugin:认证方式(密码加密方式)

authentication_string:密码加密后的一长串字符

4.新增用户

mysql>CREATE USER 'username'@'host' IDENTIFIED BY 'password';

host:主机ip,%【任意ip】 localhost【本机】 192.168.31.22【指定ip】

IDENTIFIED BY:将密码用默认的加密方式进行加密后放入表中,不直接存放可以明码

默认的加密方式需要查一下user表中的plugin,如果客户端不支持,可以指定加密方式进行加密

mysql>CREATE USER 'username'@'host' IDENTIFIED MySqlSHA1 BY 'password';

新增后的用户默认是没有任何权限的,也就是useage,只能登陆罢了

5.查看MYSQL数据库中用户的权限
mysql>show grants for 'username'@'host';
 
6.用户授权
mysql>grant privileges on dbname.tabname to "username"@"host"
privileges :权限,select【查询】,update【更新】,delete【删除】等等,all【所有】
这样的授权的用户就算拥有可所有权限,但是没办法管理其他用户,如果你想让这个用户可以授权其他用户,在后面再加上 with grant option.
grant privileges on dbname.tabname to "username"@"host" with grant option
 
 
7.修改用户
mysql>update user set host="localhost" where user="username"
user,host,plugin都可以用update语句,修改plugin之后,需要再次修改密码,否则无效,也可以在修改密码的时候指定加密方式,就不需要修改plugin
修改用户密码加密方式一般是是客户端不支持服务器这边的加密方式,才会修改的,如果支持,一般可以不修改加密方式,mysql8.0就需要修改加密方式,不然图形化工具完全没办法连接。
 
8.删除用户,根据用户名删除,也可以根据host
mysql>delete user where user="username"

注意:允许远程就是把用户的访问地址从localhost 到 % 或者指定ip,允许了远程之后,要设置权限,否则用户就只能登录,其他的什么也不能干,当然,你想逗他玩玩,也可以,你开心就好。

9.用户操作,最后一步,更新权限

mysql>flush privileges

10.如果还是显示无法连接,查看配置文件

则需要修改配置文件。找到my.cnf,一般在/etc/mysql/下面,具体情况根据实际而定。注释掉其中的bind-address属性。如下

好啦!只分享这么点点,等我再去喝点墨汁回来继续。

mysql 用户及权限管理 允许远程连接的更多相关文章

  1. mysql 用户及权限管理 小结

    MySQL 默认有个root用户,但是这个用户权限太大,一般只在管理数据库时候才用.如果在项目中要连接 MySQL 数据库,则建议新建一个权限较小的用户来连接. 在 MySQL 命令行模式下输入如下命 ...

  2. MySQL Study之--MySQL用户及权限管理

    MySQL Study之--MySQL用户及权限管理     MySQLserver通过MySQL权限表来控制用户对数据库的訪问.MySQL权限表存放在mysql数据库里.由mysql_install ...

  3. Mysql 用户,权限管理的几点理解。

    前两天项目数据库要移植到mysql,为此临时抓了几天很久没用的mysql. 公司的数据库比较简单,从oracle迁移到mysql很简单,但是,中间的权限管理让我感觉既简单又复杂..简单是因为网上关于m ...

  4. MySQL用户与权限管理

    执行mysql select 查询报错: SELECT command denied to user 'root'@'localhost' for table "xxx" 问题原因 ...

  5. mysql用户和权限管理

    用户和权限管理 Information about account privileges is stored in the user, db, host, tables_priv, columns_p ...

  6. linux 下修改mysql下root 权限来允许远程连接

    MySQL默认只允许root帐户在本地登录,如果要在其它机器上连接mysql,必须修改root允许远程连接. 其操作简单,如下所示: 1. 进入mysql: /usr/local/mysql/bin/ ...

  7. Mysql 用户和权限管理

    用户和权限管理: 语法 grant 权限 on 数据库.数据表 to '用户' @ '主机名'; 例:给 xiaogang 分配所有的权限 grant all on *.* to 'xiaogang' ...

  8. MariaDB/MySQL用户和权限管理

    本文目录: 1.权限验证 1.1 权限表 1.2 图解认证和权限分配的两个阶段 1.3 权限生效时机 2.用户管理 2.1 创建用户 2.2 create user和alter user 2.3 记录 ...

  9. mysql用户与权限管理笔记

    今天想使用一下李刚那本书上的hibernate的Demo,试出了点问题,过程中就发现mysql的用户管理和权限管理上也有点东西要注意,所以顺便就写一下mysql用户管理和权限管理的笔记. 先说一说my ...

随机推荐

  1. android 完全退出应用程序(经过严格验证)

    今天解决了如何彻底结束Android应用程序的方法.网上有很多的参考方法,什么finish():android.os.Process.killProcess(android.os.Process.my ...

  2. Java JNA (二)—— dll回调函数实现

    java调用dll文件需要使用回调函数作为公开函数的参数时,用以下方法实现: 首先,看c++中定义的dll公开函数: typedef void (*ccback)(char *name ,int le ...

  3. 【彩彩只能变身队(第七组)】Beta版本

    本篇博客包括前期博文汇总.任务墙.团队管理细节与交流细节.代码管理.Beta阶段冲刺.团队总结.用户使用报告.Postmortem报告. 服务器网址:http://47.106.227.154/ 彩彩 ...

  4. REVOKE - 删除访问权限

    SYNOPSIS REVOKE [ GRANT OPTION FOR ] { { SELECT | INSERT | UPDATE | DELETE | RULE | REFERENCES | TRI ...

  5. Linux就该这么学05学习笔记

    参考链接:https://www.linuxprobe.com/chapter-05.html   1.用户身份和能力 用户 管理员UID为0:系统的管理员用户. 系统用户UID为1-999: Lin ...

  6. 六、实现一个小功能 todolist

    1.创建一个新的Compnent 如果是通过 cli 创建的会自动加入,如果是手动创建的,需要自己加入. 2.实现添加效果 3.实现删除按钮 4.优化,把点击 添加 改为 回车 添加 5.优化,分成“ ...

  7. 描述一下JVM加载class文件的原理机制?

    JVM中类的装载是由类加载器(ClassLoader)和它的子类来实现的,Java中的类加载器是一个重要的Java运行时系统组件,它负责在运行时查找和装入类文件中的类. 由于Java的跨平台性,经过编 ...

  8. Web前端性能优化详解之CSS与JS加载

    浏览器加载页面和渲染过程 加载过程 浏览器根据DNS 服务器得到域名的IP地坛 向这个 IP 的机器发送 HTTP请求 服务器收到,处理并返回 HTTP请求 浏览器得到返回内容 渲染过程 根据 HTM ...

  9. C#高级编程笔记 (1至6章节)数组,类/方法/泛型

    2.3变量 var 类型推断 type 类的分类 如:type nametype = name.GetType(); //取变量name的类型 const 常量  const int painame ...

  10. null,blank,default

    null 是针对数据库而言,如果 null=True, 表示数据库的该字段可以为空. blank 是针对表单的,如果 blank=True,表示你的表单填写该字段的时候可以不填,比如 admin 界面 ...