Java基础91 mysql的用户权限设置问题
1、概述
1)MySQL数据库中root用户具有最高的权限(超级用户),可以对任何数据库,任何表进行操作。
2)权限账户,只拥有部分权限(CRUD) 。例如:只能操作某个数据库的某张表等等。
2、mysql的用户权限设置
2.1、连接数据库
mysql> use mysql; -- 连接mysql数据库
2.2、查看所有用户
mysql> select host,user,password from user;
2.3、创建用户
mysql> create user dshore identified by ''; -- identified by 会将纯文本的密码加密后,作为散列值存储。
2.4、修改指定用户的名称
mysql> rename user dshore to shore;
2.5、删除指定用户
mysql> drop user shore;
2.6、修改指定用户密码
mysql> update user set password = password('') where user = 'shore';
注意:修改完密码后,必须重启MySQL的服务,否则无法登陆该用户。
2.7、将指定用户的密码用MD5加密函数(单向加密)
mysql> select password('shore');
2.8、查看指定用户的权限
mysql> show grants for shore;
2.9、对指定用户授权
mysql> grant select on *.* to shore; -- 授予shore用户查看所有数据库及其对应数据库下的所有表的权限
mysql> grant select on school.* to shore; -- 授予shore用户查看school数据库下的所有表的权限
mysql> grant select on school.student to shore; -- 授予shore用户只能查看school数据库下的student表的权限
2.10、回收指定用户的权限
mysql> revoke select on *.* to shore; -- 回收shore用户查看所有数据库及其对应数据库下的所有表的查看权限
mysql> revoke select on school.* to shore; -- 回收shore用户查看school数据库下的所有表的权限
mysql> revoke select on school.student to shore; -- 回收shore用户查看school数据库下的student表的权限
上面的命令也可使用多个权限同时赋予和回收,权限之间使用逗号分隔
grant/revoke select,update,delete,insert on *.* to shore;
grant all on *.* to 'shore'@'localhost'; -- 这时,shore用户的权限相当于root 用户,没有实际意义,不建议这样授权。( @'localhost' 指本地操作的权限 )
grant all on school.* to 'shore'@'localhost'; -- 只授予对school数据库的所有操作权限
revoke all on *.* from 'shore'@'localhost'; -- 回收shore用户的所有权限
2.11、user表中host列中的值的意义
%
|
匹配所有主机 |
localhost | localhost不会被解析成IP地址,直接通过UNIXsocket连接 |
127.0.0.1 | 会通过TCP/IP协议连接,并且只能在本机访问; |
::1 | ::1就是兼容支持ipv6的,表示同ipv4的127.0.0.1 |
原创作者:DSHORE 作者主页:http://www.cnblogs.com/dshore123/ 原文出自:https://www.cnblogs.com/dshore123/p/10575681.html 欢迎转载,转载务必说明出处。(如果本文对您有帮助,可以点击一下右下角的 推荐,或评论,谢谢!) |
Java基础91 mysql的用户权限设置问题的更多相关文章
- mysql grant用户权限设置
MySQL 赋予用户权限命令的简单格式可概括为: grant 权限 on 数据库对象 to 用户 一.grant 普通数据用户,查询.插入.更新.删除 数据库中所有表数据的权利. grant sele ...
- mysql数据库用户权限设置
设置用户权限:格式:grant 权限列表 on 数据库名.表名 to '用户名'@'来源地址' identified by '密码'; * 权限列表:用于列出授权的各种数据库操作,通过逗号进行分割,如 ...
- day43 mysql 基本管理,[破解密码以及用户权限设置]以及慢日志查询配置
配置文件:详细步骤, 1,找到mysql的安装包,然后打开后会看到一个my.ini命名的程序,把它拖拽到notepad++里面来打开,(应该是其他文本形式也可以打开,可以试一下),直接拖拽即可打开该文 ...
- 重置Mysql的root密码及用户权限设置
一.重置Mysql的root密码 方法一: 直接进入localhost/phpmyadmin修改用户root的权限,设置密码: 方法二: 进入mysql控制台:mysql->use mysql ...
- 转: MySQL 赋予用户权限(grant %-远程和localhost-本地区别)
相关参考资料: MySQL 赋予用户权限命令的简单格式可概括为: grant 权限 on 数据库对象 to 用户 一.grant 普通数据用户,查询.插入.更新.删除 数据库中所有表数据的权利. gr ...
- MySQL 赋予用户权限(grant %-远程和localhost-本地区别)
不过有些时候(有些版本)'%'不包括localhost,要单独对@'localhost'进行赋值,这事真让我遇上了,在对mysql5.1.32建立远程用户时. 分别对'%'和'localhost'授权 ...
- mysql 操作用户权限
使用可以对mysql数据库用户表有操作权限的用户名登陆mysqlinsert into user(Host,User,Password) values('%','name','password');如 ...
- linux普通用户权限设置为超级用户权限方法、sudo不用登陆密码
以用户zato为例 普通用户权限设置为超级用户权限 进入有超级用户权限的账号 添加文件可写(w)权限 sudo chmod u+x /etc/sudoers 编辑/etc/sudoers文件 添加语句 ...
- MYSQL 备份用户权限
MYSQL 备份用户权限 datadbblack 192.168.1.10 是 SELECT, RELOAD, SHOW DATABASES, LOCK TABLES 否 权限列表 1.Select ...
随机推荐
- 冒泡排序的C、C++实现
一.冒泡排序 冒泡排序就是重复地走访过要排序的元素列,依次比较两个相邻的元素,如果他们的顺序(如数字从大到小.首字母从A到Z)错误就把他们交换过来.走访元素的工作是重复地进行直到没有相邻元素需要交换, ...
- jenkins 添加 k8s 云
同事的jenkins 链接自己的 k8s 总是出问题 给出了资料和服务器 进行处理. 同时给出的参考资料:https://blog.csdn.net/diantun00/article/details ...
- powershell远程管理服务器磁盘空间的实现代码
一.启用远程管理 1.将管理服务器的trusthost列表改为* 运行Set-item wsman:localhostclienttrustedhosts ?value * 2.在远程服务器上运行En ...
- 解决Ubuntu14.04下sublime无法输入中文
原帖地址: (简书作者) http://www.jianshu.com/p/bf05fb3a4709 前言 sublime很好用,但是ubuntu14.04 下不能输入中文,这是一个很大的问题.不知道 ...
- InputStream流无法重复读取的解决办法
前言:今天工作的需要需要读取aws云上S3桶里面的PDF数据,第一步能够正常的获取PDF文件的InputStream流,然后,我为了测试使用了IOUtils.toString(is)将流System. ...
- 一本通1644【例 4】佳佳的 Fibonacci
1644:[例 4]佳佳的 Fibonacci 时间限制: 1000 ms 内存限制: 524288 KB sol:搞了大概一个多小时什么结果都没,被迫去看题解,感觉自己菜到家了qaq ...
- IOS AES加密之ECB128模式
1.AES加密模式有好几种,网上大多是CBC.256模式,找了好久才找到解决ECB128模式加密. AES需要导入头文件 #import <CommonCrypto/CommonCryptor. ...
- python netifaces usage
1. install python dev sudo apt-get install python-dev 2.download src code and install https://pypi.p ...
- Maven项目打包,Jar包不更新的问题
问题: 我的maven项目A要打成Jar包A,依赖了另外一个项目B生成的Jar包B.更改了项目B的代码,然后继续打包项目A,生成的Jar包A中并没有我修改了的代码. 原因: Jar包B在开始时被Ins ...
- dp乱写3:环形区间dp(数字游戏)
状态: fmax[i,j]//表示前i个数分成j个部分的最大值 fmin[i,j]//表示前i个数分成j个部分的最小值 边界:fmax[i,1]:=(sum[i] mod 10+10) mod 10( ...