MySQL用户管理

1.mysql数据库表结构

1)mysql数据库的所有表:

2)user表的结构

3)db表结构

4)权限表(tables_priv和columns_priv表)

①tables_priv表结构:

②columns_priv表结构:

6)procs_priv表结构

2.账户管理

1)使用命令行命令登入mysql

2)新增用户

①使用grant user语句新增用户

②使用insert语句添加用户

③使用GRANT语句新建普通用户

3)删除用户

①使用drop user语句删除用户

②使用delete语句删除用户

4)root修改自己的密码

①使用mysqladmin工具更改密码(注:密码一定要用双引号括起来)

②使用update语句更改user表

③使用set命令更改密码

5)root用户修改普通用户的密码

①用set命令修改密码

(修改密码为yunshu,密码要用双引号括起来,用单引号会出问题

②使用update语句更改user表

 (更改密码为password

③使用grant语句更改密码

 (将yunshu的密码更改为sercet

6)普通用户修改自己的密码

①使用set语句修改

②使用mysqladmin工具修改密码

 (密码yunshu后面不能带分号,否则会将分号当作密码

7)root用户密码丢失的解决方法

①使用--skip-grant-tables选项启动MySQL服务

windows:

mysqld --skip-grant-tables

mysqld-nt --skip-grant-tables

net start mysql --skip-grant-tables

linux:

mysqld_safe --skip-grant-tables user=mysql

/etc/init.d/mysql start --mysqld  --skip-grant-tables

②用update语句修改密码,加载权限表

例子:

(登入mysql,此时不用密码可登入

 (不能用set语句修改密码

 (用update语句修改密码,并用flush privileges加载权限表

  (再次登录,OK!

3、权限管理

1)user表的权限列

2)授权

语法:

GRANT priv_type [(column_list)] ON database.table  TO user [IDENTIFIED BY [PASSWORD] ‘password‘] [,user [IDDENTIFIED BY [PASSWORD] ‘password‘]]...[WITH with_option [with_option]...]

with_option参数:

a、GRANT OPTION:被授权的用户可以将这些权限赋予给别的用户;

b、MAX_QUERIES_PER_HOUR_count:设置每个小时可以执行count次查询;

c、MAX_UPDATES_PER_HOUR_count:设置每个小时可以执行count次更新;

d、MAX_CONNECTIONS_PER_HOUR_count:设置每个小时可以建立count次连接;

e、MAX_USER_CONNECTIONS_PER_count:设置单个用户可以同时具有的count连接数;

例子:

   (给yunshu用户授权

 (用yunshu用户给yunshu2用户授权

3)收回权限

收回指定权限的REVOKE语句的基本语法是:

REVOKE priv_type [(column_list)]... ON database.table FROM user [,user]...

收回全部权限的REVOKE语句的基本语法是:

REVOKE ALL PRIVILEGES,GRANT OPTION FROM user [,user]...

例子:

4)查看用户权限

①查看user表

②使用show grant语句

基本语法:SHOW GRANTS FOR ‘username‘@‘hostname‘

例子:

来自为知笔记(Wiz)

时间: 2024-08-24 11:55:38

MySQL用户管理的相关文章

mysql用户管理及授权管理

mysql用户和权限管理 mysqld进程在启动的时候,将table,host,db,table_privs,clumn_privs,procs_privs,proxies_privs载入内存. 用户账号: 用户名+主机 用户名:16字符以内. 主机: 主机名: mytest IP地址:172.168.1.20 网络地址:172.168.1.0/255.255.0.0 通配符: 172.168.%.% 172.168.1.2__ %.qq.com,注如果是域名,则mysql需要进行解析,如果取消

MySQL用户管理及权限设置

mysql 用户管理和权限设置 用户管理 mysql>use mysql; 查看 mysql> select host,user,password from user ; 创建 mysql> create user zx_root IDENTIFIED by 'xxxxx'; //identified by 会将纯文本密码加密作为散列值存储 修改 mysql>rename user feng to newuser://mysql 5之后可以使用,之前需要使用update 更新use

MySQL 用户管理——权限表

权限表 权限表存放在mysql数据库中 user表结构 用户列:Host.User.Password 权限列:*priv 资源控制列:max* 安全列:其余   db表 存储了用户对某个数据库的操作权限,决定用户能从哪个主机存取哪个数据库.   host表 存储某个主机对数据库的操作权限,配合db表对给定主机上数据库级操作权限做更细致的控制. MySQL 用户管理——权限表

mysql用户管理、常用sql语句、mysql数据库备份恢复

mysql用户管理 1.新增用户user1,并设置密码为123456 mysql> grant all on *.* to 'user1'@'127.0.0.1' identified by '123456'; #创建user1用户并授予其所有权限"*.*"(通配符) #第一个*:表示所有的数据库 #第二个*:表示所有的表 #127.0.0.1表示来源IP,指的只有这个IP可以连接:'%':代表所有的ip #identified by 设置密码 2.对user1用户进行授权管理

MySQL用户管理及SQL语句详解

1.1 MySQL用户管理 1.1.1 用户的定义 用户名+主机域 mysql> select user,host,password from mysql.user; +--------+------------+-------------------------------------------+ | user | host | password | +--------+------------+-------------------------------------------+ | r

mysql用户管理、常用语句、数据分备份恢复

mysql用户管理 创建用户并授权 指定登录ip 使用root用户登录录创建授权新用户:mysql> grant all on . to 'user1'@'127.0.0.1' identified by '123456':// all 所有操作(增删查改)// 第一个 通配所有库名,第二个通配所有表名// user1 为用户名// 127.0.0.1 指定登录ip,可用通配符%表示所有ip.// '123456' 为user1用户的登录密码Query OK, 0 rows affected (

MySQL用户管理、常用sql语句、数据库备份

13.4 MySQL用户管理 创建用户并授权 指定登录IP [[email protected] ~]# mysql -uroot -pEnter password: Welcome to the MySQL monitor.mysql> grant all on . to 'user1'@'127.0.0.1' identified by '123456';#创建user1用户并授予其所有权限"."(通配符)#第一个表示db_name:第二个表示tb_name#同时指定其来源I

MySQL用户管理、sql常用语句、mysql备份与恢复

MySQL用户管理 创建用户 grant all on *.* to 'user1'@'localhost' identified by '123456'; grant all on db1.* to 'user2'@'%' identified by '123456'; //创建user2用户,所有ip都能登录,指定权限为db1库下的所有表: flush privileges; 刷新授权 .:表示所有库和表:user1:用户名:localhost:登录ip,默认localhost为本机登录ip

2.MySQL用户管理,常用SQL语句,MySQL数据库备份与恢复

[toc] MySQL用户管理,重用SQL语句,MySQL数据库备份与恢复 一.MySQL用户管理 1.创建一个普通用户并授权 首先启动mysql,然后进入 [[email protected] ~]# /etc/init.d/mysqld start Starting MySQL... SUCCESS! [[email protected] ~]# mysql -uroot -pxavilinux Warning: Using a password on the command line in

13.4 mysql用户管理 13.5 常用sql语句 13.6 mysql数据库备份恢复

13.4 mysql用户管理 grant all on . to 'user1' identified by 'passwd';mysql> grant all on . to 'user1' identified by 'passwd';Query OK, 0 rows affected (0.01 sec) grant SELECT,UPDATE,INSERT on db1. to 'user2'@'192.168.15.132' identified by 'passwd';mysql>