mysql由浅入深探究(二)----mysql用户操作
上一节我们完成了mysql的安装,现在我们将开启实战模式,完成一些基本的mysql操作。这节我们分为一些几个内容:
- mysql中用户新建
- mysql中用户删除
- mysql中用户修改
- mysql中用户查看
接下来的几章的内容分布都是按照这个模式进行的----增删改查,这也是数据库的本质。
- mysql中用户的新建:我们不是创建了root用户了吗?为什么还需要创建用户,原因很简单,就像linux一样,有了root,但是还是需要创建其他用户,因为root的权限太高,很多操作我们并不希望所有的用户都有权限执行。其实就是起到一个权限控制的作用。
我们先查看一下mysq.user的表结构(由于属性太多,采用命令select * from mysql.user\G来输出)

可以看到其中有很多参数,select_privilege表达的是查询的权限。
新增加一个用户: insert into mysql.user(Host,User,Password) values("localhost","libo",password("***"));
同样的方式,我们通过命令查看,可以发现新建的用户我们没有任何权限,所有权限属性都是N, 那是不是现在我们没有对数据库操作的任何权限呢?
但是如果我们此时直接使用用新建的用户登陆mysql的话会提示错误:ERROR 1045 (28000): Access denied for user 'libo'@'localhost' (using password: YES),这是为什么?因为mysql不支持热启动,我们在新建用户的或者是进行用户权限的操作时,其实mysql并没有察觉到这个变化,所以我们使用flush privileges加载这个权限更改。
但是登陆之后可以发现,我们并没有权限来操作数据库,新建也不行。
localhost权限问题: 如果我们在创建用户时,我们制定的第一个参数是localhost,那么我们就只能在本地进行登陆,远程无法使用该用户进行登陆,如果想要远程登陆,那么我们可以把这个参数改为%。
用户权限问题: 如何给新建的用户授予权限?语法如下:
grant 权限 on 数据库.* to 用户名@登录主机 identified by "密码";
实验一下,我们刚才新建的用户libo并没有赋予任何权限,现在我们想要提供一些基本的新增的权限,那么我们可以这样写:
grant create on test.* to libo@localhost identified by "***";
下面我们再测试一下现在能不能新建表了。
现在发现我们具有了新增的权限,但是我们并没有删除的权限。
2. 用户删除操作:
语法:(其实和普通table同样的语法结构)delete fromt mysq.user where User="libo";
3. 用户修改操作:
语法: update mysq.user set Host="%" where User="***";
4. 用户查看操作:
语法: select * from mysql.user where user="***";
mysql由浅入深探究(二)----mysql用户操作的更多相关文章
- mysql颠覆实战笔记(三)-- 用户登录(二):保存用户操作日志的方法
版权声明:笔记整理者亡命小卒热爱自由,崇尚分享.但是本笔记源自www.jtthink.com(程序员在囧途)沈逸老师的<web级mysql颠覆实战课程 >.如需转载请尊重老师劳动,保留沈逸 ...
- mysql由浅入深探究(一)----数据库简介与mysql安装
mysql简介: 首先谈到mysql,我们要知道这是一个开源的数据库,与开源对应的就是free,但这并不意味着其性能会比很差,mysql同样能支持千万级以上的大数据量,甚至更多.同时mysql还支持许 ...
- mysql 用init-connect+binlog实现用户操作追踪做access的ip的log记录
在MYSQL中,每个连接都会先执行init-connect,进行连接的初始化.我们可以在这里获取用户的登录名称和thread的ID值.然后配合binlog,就可以追踪到每个操作语句的操作时间,操作人等 ...
- 高性能可扩展mysql 笔记(二)用户模型设计、用户实体表结构设计、设计范式
个人博客网:https://wushaopei.github.io/ (你想要这里多有) 一.用户模型设计 电商羡慕中用户模型的设计涉及以下几个部分: 以电商平台京东的登录.注册页面作为例: ...
- Mysql基础(二):MySQL之存储引擎
目录 MySQL之存储引擎 1.MySQL存储引擎介绍 2.MySQL结构 3.MySQL存储引擎分类 4.存储引擎的使用 5.总结 MySQL之存储引擎 1.MySQL存储引擎介绍 MySQL中的数 ...
- mysql由浅入深探究(三)----mysql增删改查
通过前两节的学习,目前我们已经完成了数据库的安装,用户的创建及权限操作等相关操作,但是我们似乎我们只是隐隐约约接触到了数据库的一些基本操作,对数据库表还是比较陌生.那么现在我们呢开始了解一些数据库的一 ...
- mysql由浅入深探究(四)----mysql事务详解
什么是事务: 通俗的解释就是对数据库进行的一组完整的操作,这组完整的操作中包含一个或多个操作.解释的太low了,来点官方的:事务就是DBMS中执行的一个完整的逻辑单元,这个逻辑单元中包含一个或者多个操 ...
- MySQL权限系统(二). MySQL提供的特权 Privileges Provided by MySQL
MySQL provides privileges that apply in different contexts and at different levels of operation: Adm ...
- 0816关于MySQL的审计 init-connect+binlog实现用户操作追踪
转自:http://blog.sina.com.cn/s/blog_605f5b4f01013xkv.html mysql 用init-connect+binlog实现用户操作追踪 做access 的 ...
随机推荐
- 使用cocos2d-js-3.0RC1中的物理引擎chipmunk模拟的“别碰钉子”源码分享(含碰撞检测)
分别用box2d和chipmunk实现了一下,不过box2d没整理,也懒得整理了.chipmunk整理了一下,分享给大家吧. 刚开始研究,抛砖引玉 简要说明:1.初始化物理环境,增加边界 initPh ...
- Java使用到的常用类总结
基本类型 常用:int.long.double.boolean. 不常用:byte.float.char.short
- 关于Python有用的snippets
1.将字典的key,value反转换位置 值value可以取任何数据类型,但键key必须是不可变的,如字符串,数字或元组. dict1={'Lisa':1,'Bob':2,'Mick':3} dict ...
- VMware和Centos系统安装
1.Linux发行版的选择 2.vmware创建一个虚拟机(centos) 3.安装配置centos7 4.xshell配置连接虚拟机(centos) 选择性 pc可以选择 -纯系统 Linux/wi ...
- PAT 甲级 1005. Spell It Right (20) 【字符串】
题目链接 https://www.patest.cn/contests/pat-a-practise/1005 思路 因为 n <= 10^100 所以 要用字符串读入 但是 100 * 100 ...
- swift实现AES解密
原来的加密解密是用java写的,用在安卓系统上.现在要用在iOS系统上,所以从服务器上下载过来的加密文件要用swift来实现其的解密方法. 具体过程如下: 给NSData增加一个类目,NSData+A ...
- 【Leetcode-easy】Remove Duplicates from Sorted Array
题目要求:删除排好序的含有重复元素的数组.返回去除重复后的数组长度,并更新原始数组.不能使用额外空间. 思路:要不额外的使用内存空间,那么只有遍历数组,count保持下一个不重复的数字,遍历过程中如果 ...
- Window7 环境下 MariaDB 的安装 及使用
MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可.开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方 ...
- 搭建LoadRunner中的场景(四)控制器的全局设置
选择“Tools”菜单-“Options”选项打开设置窗口 1.超时设置 2.运行时设置 3.运行时文件存储设置 4.路径翻译表 路径翻译表是一种映射,将控制器上的文件路径转换为远程主机上的文件路径. ...
- leetcode 66. Plus One(高精度加法)
Given a non-negative number represented as an array of digits, plus one to the number. The digits ar ...