`

MySQL用户管理

阅读更多
权限(privilege):
CREATE
DROP
ALTER
DELETE
INDEX
INSERT
SELECT
UPDATE
CREATE VIEW
SHOW VIEW
ALTER ROUTINE
CREATE ROUTINE
EXECUTE
FILE
CREATE TEMPORARY TABLES
LOCK TABLES
CREATE USER
PROCESS
RELOAD
REPLICATION CLIENT
REPLICATION SLAVE
SHOW DATABASES
SHUTDOWN
SUPER


一、创建用户并分配权限:
SQL语句:
-------------------------------------------------------------------------
GRANT privileges [(columns)]
ON item
TO 'user_name'@'host_name' [IDENTIFIED BY 'password']
[REQUIRE ssl_options]
[WITH [GRANT OPTION | limit_option]]
-------------------------------------------------------------------------
1) privileges子句
分成三种类型的访问权限: 管理权限(如: SHUTDOWN, FILE, RELOAD等)
数据库等的操作权限(如: SELECT, UPDATE, INSERT,DELETE等)
特殊权限: ALL代表除GRANT外的所有权限,USAGE代表无权限

2) columns 指定数据列的访问权限( 如: SELECT( newsId, title) )

3) item 指定有关权限的作用范围:
*--当未指定数据库时:所有数据库的所有表。指定数据库当前数据库所有表,
*.*--所有数据库中的所有表
dbName.*--指定数据库的所有表
dbName.tbName--指定数据库指定表
tbName默认数据库的指定表

4) user_name新用户的用户名

5) host_name主机名--'%'表示所有的主机( 'user_name'@'%' = 'user_name')。在host_name 中可以有通配符*如: 202.115.6.*

6) IDENTIFIED BY 'password'用户密码设置。不提供该子句的出现的两种情况:创建新用户时--密码为空, 修改用户时--密码不变

7) REQUIRE ssl_option 是否要用加密连接mysql(只有unix mysql支持,一般不用该子句)

8) WITH GRANT OPTION 创建的用户是否能够把自己的权限分配给别的用户

8.1) WITH MAX_CONNECTION_PER_HOUR n MAX_QUERIES_PER_HOUR n MAX_UPDATES_PER_HOUR N;用来设置该用户最大的连接数,每小时查询次数,每小时修改次数。默认情况下无限制。

-----------------------------------------------------------------------------------------------------------
二:收回权限和删除用户
SQL语句:
REVOKE privileges (columns) ON item FROM account
account必须与授予权限时一致,而privileges不用一致。

例子:收回用户的所有权限并删除用户
一种方法:
删除出授权权限外的所有权限
mysql> REVOKE ALL ON *.* FROM userName;
如有为用户添加授权权限则
mysql> REVOKE GRANT OPTION ON *.* FROM userName;
如果创建时要求用户必须使用SSL连接则必须:
mysql> GRANT USAGE ON *.* TO userName REQUIRE NONE;
如果创建时要求用户必须设置连接数等:
mysql> GRANT USAGE ON *.* TO userName WITH MAX_CONNECTION_PER_HOUR 0 MAX_QUERIES_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0;
上面只是收回了权限,下面是删除用户
mysql> use mysql;
mysql> DELETE FROM user WHERE User= 'userName' and Host = 'hostName';
mysql> FLUSH PRIVILEGES;(重新载入授权表)

更简单的一种方法:
mysql> delete from user where User = 'userName' and Host = 'hostName';
mysql> delete from db where User = 'userName' and Host = 'hostName';
mysql> delete from columns_pri where User = 'userName' and Host = 'hostName';
mysql> delete from tables_pri where User = 'userName' and Host = 'hostName';
mysql> flush privileges;

--------------------------------------------------------------------------------------------------------
三: (扩展)修改口令&设置丢失的口令
方法一: mysql> GRANT USAGE ON *.* TO 'userName'@'hostName' IDENTIFIED BY 'newPassword';

方法二: mysql> set password for 'userName'@'hostName' = PASSWORD('newPassword')

方法三 : mysql> use mysql;
mysql> update User set password = PASSWORD('newPassword') where User = 'userName' AND Host = 'hostName';
mysql> FLUSH PRIVILEGES;
分享到:
评论

相关推荐

    mysql 用户管理

    MySQL用户管理是数据库系统中至关重要的环节,它涉及到数据安全、权限控制以及日常运维等多个方面。在MySQL中,用户账户的创建、登录、授权、修改和删除等操作都需要遵循一定的规则和流程。 首先,创建新的MySQL...

    MySQL用户管理和视图

    MySQL用户管理是指在MySQL数据库中管理用户账户的权限和访问控制,包括创建用户、授予权限、撤销权限、修改密码、删除用户等操作。视图是由数据库中的一个或多个表导出的虚拟表,可以简化复杂的查询、控制权限等。 ...

    java+MySQL用户管理系统

    此代码主要是用JDBC和MySQL数据库完成一个简单的用户管理系统,系统的设计模式采用工场模 式和代 理模式,此代码很适合初学Java者。 运行方法: 1.运行需要启动MySQL数据库 2.创建数据库名为zhaochao和表名为...

    MYSQL用户管理和权限管理.pdf

    MySQL用户管理和权限管理是数据库系统中的关键组成部分,它确保了数据的安全性和访问控制。MySQL作为一个多用户数据库系统,允许不同的用户根据其角色和需求访问不同的数据资源。在MySQL中,用户分为两类:超级管理...

    MySQL管理密码用户授权实践

    管理MySQL数据库包括管理用户账户和相应的权限,确保数据的安全和有效访问。本文将详细讨论如何进行MySQL管理密码的恢复与设置,以及如何进行用户授权和撤销。 1. MySQL密码恢复及设置 MySQL管理密码的恢复和设置...

    Mysql数据库管理工具

    "Mysql数据库管理工具"就是一个这样的解决方案,它专为简化MySQL数据库操作而设计,并且特别强调了对中文的支持,使得中国用户在使用过程中能够更加顺畅。 Navicat是众多MySQL管理工具中的一款知名软件,提供的版本...

    MYSQL高级配置和管理电子书

    第三部分介绍了MySQL管理的一般知识、存取权限系统和怎样实现MySQL用户管理。 本书适合具有一定数据库知识,并希望在网络上建立分布式结构数据库或建立基于因特网应用系统的读者使用。本书也适合MySQL数据库管理...

    navicat 10 for mysql管理工具

    Navicat 是一款深受数据库管理员和开发人员喜爱的数据库管理工具,其针对MySQL数据库的版本——Navicat 10 for MySQL,更是以其强大的功能和友好的界面,为用户提供了便捷的数据库操作体验。在本文中,我们将深入...

    《MySQL-5.7从入门到精通》第13章-用户管理完整.pptx

    MySQL用户管理是MySQL数据库管理系统中的一个重要组件,它负责管理MySQL服务器的用户账户和权限。用户管理是确保数据库安全的关键环节,它可以控制用户对数据库的访问权限,防止未经授权的访问和操作。 permission...

    一款Java的MySqlWeb管理工具

    总结来说,这款基于Java的MySQLWeb管理工具提供了一个方便的Web界面来管理和操作MySQL数据库,对于那些需要远程访问数据库或者喜欢Web界面的用户来说,是一个理想的选择。用户在使用前应仔细阅读提供的文档,确保...

    mysql用户管理

    用户权限更改,用户管理,新建用户,喜欢mysql的朋友可以一看,mysql基础部分

    mysql(图书管理系统实验报告).docx

    ### MySQL 图书管理系统实验报告知识点总结 #### 一、课程设计概述 - **课程设计背景**:本实验旨在为某大学图书馆开发一个图书管理系统。该系统需具备多种功能,包括但不限于读者信息管理(添加、修改、删除)、...

    mysql企业管理器

    5. **用户权限管理**:对MySQL用户进行权限分配,控制他们对数据库的访问权限,以确保数据安全。可以创建、修改和删除用户,定义其角色和权限范围。 6. **备份与恢复**:定期备份数据库以防止数据丢失,同时提供一...

    GO语言初学教程 学生管理系统使用MySQL存储信息

    该系统可以实现学生信息的增删查改,其中查询功能可以按照学生的学号和姓名查询,同时也可以查询具有相同分数的人,和在相同班级的人。修改功能可以根据学生的学号去修改学生的成绩以及班级。该系统简单的使用了GORM...

    java+ mysql仓库管理系统

    【Java + MySQL 仓库管理系统】是一个实用的软件应用,它结合了Java编程语言与MySQL数据库管理系统,用于实现高效、便捷的仓库库存管理。这个系统特别适合初学者学习,因为它不仅提供了完整的源代码,还附带了SQL...

    数据库MySQL入门.pdf

    MySQL用户管理: 1. 新建用户:可以使用命令行方式或图形化界面方式新建用户。 2. 用户类型:用户可以是本地用户或远程用户,根据需要可以创建不同的用户类型。 3. 权限管理:可以对用户授予不同的权限,例如授予...

    mysql及管理界面工具win7-64位系统

    在Windows 7 64位系统中安装和管理MySQL,你需要一个兼容的MySQL服务器版本和一个用户友好的管理界面工具。 标题“mysql及管理界面工具win7-64位系统”暗示了本话题涉及两个主要部分:MySQL服务器的安装和一个适用...

    通过Vue+node.js+Element-UI+MySql实现超市管理系统.rar

    订单管理模块,数据统计echarts表,该管理系统通过Vue+node.js+Element-UI+MySql实现,其主要功能模块含有用户登陆模块,用户管理模块,权限管理模块,商品管理模块,订单管理模块。 论文应当对各个部分的设计和实现...

    MySQL数据管理工具

    总的来说,MySQL数据管理工具如Navicat for MySQL极大地提高了数据库管理的效率和便利性,使非专业用户也能轻松上手。通过熟练掌握这类工具,不仅可以提升工作效率,还能为数据库的维护和优化提供有力的支持。在实际...

    MySQL学生成绩管理系统设计实验报告

    【MySQL学生成绩管理系统设计实验报告】 一、项目背景与目的 MySQL学生成绩管理系统旨在解决学校期末成绩统计分析的工作难题。传统的手工处理方式既耗时又易出错,随着计算机技术的发展,利用计算机进行成绩管理已...

Global site tag (gtag.js) - Google Analytics