Mysql权限表 >> 初始化过后产生的mysql

Mysql.user非常重要

一、用户字段

二、权限字段

三、安全字段

四、资源控制字段

Mysql.db mysql.hsot

用户字段

权限字段

Mysql.tables_priv

Mysql.columms_priv

Procs_priv

Mysql用户管理

登录和退出mysql

实例:

Mysql -h 192.168.5.240 -P 3306 -uroot -p123 mysql -e select user,host from user

-h 主机名

-P 服务器端口

-u 用户名

-p 密码

-e 连接sql语句

\s获取当前服务器状态信息

Quit退出登录

创建用户

方法一create user语句创建

实例:create user user1@localhostidentified by 123456;

方法二insert语句创建 不常用

实例:insert into mysql.user(user,host,password,ssl_cipher,x509_issuer,x509_subject)

Values (user2,localhost,password(123456),’’,’’);

Flush privileges;

方法三grant语句创建 //同时授权,最常用

实例:Grant select on *to user3@ localhostidentitied by 123456;

Flush privileges;

删除用户

方法一drop user语句删除

Drop user user1@localhost;

方法二delect语句删除

Delect from mysql.user where user=user2and host=localhsot;

Flush privileges;

修改用户密码(root修改自己密码)

方法一

Mysqladmin -u root -p password new password//将提示输入旧密码

方法二

Update mysql.user set password=password(new password) where user=rootand host=localhost;

Flush privileges;

方法三

Set password=password(new password);

Flush privileges;

Root修改其他用户密码

方法一

Set password for user3@localhost=password(new_password);

Flush privileges;

方法二

Update mysql.user set password=password(new passowrd) where user=user3and host=localhost;

Flush privileges;

方法三

Grant select on *to user3@localhostidentified by tianyun;

Flush privileges;

普通用户修改自己密码

Set password=password(new passowrd);

丢失root用户密码

Vim /etc/my.cnf

Skip-grant-tables //增加这一句表示跳过授权表也就是跳过密码验证

保存退出

Service mysqld restart //重启mysq服务器

Mysql -uroot

Update mysql.user set password=password(new password) where user=rootand host=localhost;

Flush privileges;

Mysql权限管理

权限应用的顺序:

user(Y/N)==>DB==>tables_priv==>colums_priv

语法格式

grant 权限列表 on 库名.表名 to 用户名@'客户端主机' [identified by '密码' with grant option]

1权限列表 all 所有权限(不包括授权权限)

select update

2库名.表名 *.* 所有数据库

数据库.* 指定数据库下的所数据对象 最常用

数据库名称.表名称 指定数据库的指定表

3客户端主机

对象列表(为谁赋值了上面的增删改查的这些权限)

% 所有主机

192.168.2.% 192.168.2.段的主机

192.168.2.8 指定主机

4With_option参数

Grant option 授权选项

Max_queries_per_hour; 定义每小时允许查询的查询数

Max_updates_per_hour; 定义每小时允许更新的查询数

Max_connections_per_hour; 定义每小时可以建立的连接数

Max_user_connections; 定义单个用户同时可以建立的连接数

实例:把pro这个数据库下的所有权限都给了李四

Grant all on pro.* to lisi@localhost;//db级的

Grant all on *.* toadmin1@`%` identified by tianyun; //全局

Grant all on pro.* to admin2@`%` identified by tianyunwith grant option; //增加这个用户的授权权限

Grant all on bbs.user to admin4@% identified by tianyun//表级

Grant select (col1),insert(col2,col3) on bbs.user to admin@%identified by tianyun; //列级别

查看权限:show grants for 用户名@客户端主机名 \g

实例 show grants for admin1@%\G

删除收回权限

Revoke 权限列表 on 对象列表 from 用户列表

Revoke all on pro.* from lisi@localhost;//回收所有权限

Revoke delete on pro.* from lisi@localhost;//回收部分权限

注意:在日常管理中在删除用户之前应该是先删除该用户所有权限,再删除该用户,不然以后如果再创建相同的用户的话权限就还是存在的,这是不可以的


本文出自 “快乐学习” 博客,谢绝转载!

更多相关文章

  1. 为mysql数据备份建立最小权限的用户
  2. 我需要提供哪些权限(如果有)我的Chrome扩展程序才能进行远程AJAX调
  3. res.partner上`write`的高级访问权限
  4. Linux的文件权限
  5. linux系统更改目录和文件的权限总结
  6. linux权限不够,sh不能用
  7. Linux学习笔记(九)--RedHat 7.0之用户身份与文件权限、存储结构与
  8. linux 可读可写可执行权限 chmod
  9. Linux服务器权限管理实践——添加用户只访问某些文件目录

随机推荐

  1. android 创建文件夹失败
  2. Android平台上的JNI技术介绍
  3. Android通过startService播放背景音乐简
  4. Cordova+Vue整合到android studio上实现
  5. Android(安卓)Studio代码调试技巧篇
  6. android生命周期()
  7. 如何使Android应用程序获取系统权限
  8. Android系列教程之七:EditText使用详解-包
  9. android 按钮水波纹效果
  10. 最简单的走马灯实现