mysql用户管理与用户权限(一)

简介: mysql用户管理与用户权限(一)

一、数据库用户管理


1.1 新建用户

CREATE  USER '用户名'@'来源地址' [IDENTIFIED BY [PASSWORD] '密码'];
-------------------------------------------------------------------------------
'用户名':指定将创建的用户名
'来源地址':指定新创建的用户可在哪些主机上登录,可使用p地址、网段、主机名的形式,本地用户可用localhost,允许任意主机登录可用通配符%
'密码':
若使用明文密码,直接输入'密码',插入到数据库时由Mysq1自动加密;
若使用加密密码,需要先使用SELECT PASSWORD('密码');获取密文,再在语句中添加PASSWORD'密文';
若省略"IDENTIEIEDBY"部分,则用户的密码将为空(不建议使用)


1.2 查看用户

用户数据位于mysql库->user表中


mysql> USE mysql;
mysql> select user,host,authentication_string from user;
+---------------+-----------+-------------------------------------------+
| user          | host      | authentication_string                     |
+---------------+-----------+-------------------------------------------+
| root          | localhost | *032197AE5731D4664921A6CCAC7CFCE6A0698693 |
| mysql.session | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
| mysql.sys     | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
| zhangsan      | localhost | *032197AE5731D4664921A6CCAC7CFCE6A0698693 |
| lisi          | localhost | *032197AE5731D4664921A6CCAC7CFCE6A0698693 |
+---------------+-----------+-------------------------------------------+
5 rows in set (0.00 sec)


1.3 重命名用户rename

用户完整名称’zhangsan’@localhost

mysql> rename user 'zhangsan'@'localhost' to 'stevelu'@'localhost';
mysql> select user,host,authentication_string from user;
+---------------+-----------+-------------------------------------------+
| user          | host      | authentication_string                     |
+---------------+-----------+-------------------------------------------+
| root          | localhost | *032197AE5731D4664921A6CCAC7CFCE6A0698693 |
| mysql.session | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
| mysql.sys     | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
| stevelu       | localhost | *032197AE5731D4664921A6CCAC7CFCE6A0698693 |
| lisi          | localhost | *032197AE5731D4664921A6CCAC7CFCE6A0698693 |
+---------------+-----------+-------------------------------------------+
5 rows in set (0.00 sec)


1.4 删除用户drop

mysql> drop user 'lisi'@'localhost';
mysql> select user,host,authentication_string from user;
+---------------+-----------+-------------------------------------------+
| user          | host      | authentication_string                     |
+---------------+-----------+-------------------------------------------+
| root          | localhost | *032197AE5731D4664921A6CCAC7CFCE6A0698693 |
| mysql.session | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
| mysql.sys     | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
| stevelu       | localhost | *032197AE5731D4664921A6CCAC7CFCE6A0698693 |
+---------------+-----------+-------------------------------------------+
4 rows in set (0.00 sec)



1.5 修改当前用户登录密码

mysql> set password = password('123456');
Query OK, 0 rows affected, 1 warning (0.00 sec)
mysql> select user,host,authentication_string from user;
+---------------+-----------+-------------------------------------------+
| user          | host      | authentication_string                     |
+---------------+-----------+-------------------------------------------+
| root          | localhost | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
| mysql.session | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
| mysql.sys     | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
| stevelu       | localhost | *032197AE5731D4664921A6CCAC7CFCE6A0698693 |
+---------------+-----------+-------------------------------------------+
4 rows in set (0.00 sec)


1.6 修改其他用户密码

mysql> set password for 'stevelu'@'localhost'= password('123456');

1.7 忘记root密码

(1)修改/etc/my.cnf配置文件,不使用密码直接登录到mysql

vim /etc/my.cnf
[mysqld]
skip-grant-tables      #添加,使登录mysq1不使用授权表
systemctl restart mysqld

(2)使用update 修改root密码,刷新数据库

UPDATE mysql.user SET AUTHENTICATION_STRING=PASSWORD('000000')where user='root';
FLUSH PRIVILEGES;
quit 
mysql -u root -p000000


注意:最后再把/etc/my.cnf 配置文件里的skip-grant-tables删除,并重启mysql服务。


1.8 小结

create user ' username'@' address' identified by ' password'; 
rename user old user to new user; 
drop user select user, host, authentication string from mysql. user; 
set password=password(' XXXX'); 
set password for
相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
目录
相关文章
|
存储 关系型数据库 MySQL
mysql(三)用户权限管理
为什么要设置用户权限?MySQL设置用户管理权限的主要目的是为了确保数据库的安全性和数据的机密性。以下是一些原因。
716 1
mysql(三)用户权限管理
|
SQL 关系型数据库 MySQL
mysql用户权限设置
mysql用户权限设置
642 1
|
SQL 关系型数据库 MySQL
⑤ 【MySQL】DCL语句 —— 用户管理、权限控制
⑤ 【MySQL】DCL语句 —— 用户管理、权限控制
404 0
|
存储 关系型数据库 MySQL
【mysql】—— 用户管理
【mysql】—— 用户管理
354 0
|
存储 关系型数据库 MySQL
【MySQL】用户管理 -- 详解
【MySQL】用户管理 -- 详解
|
安全 关系型数据库 MySQL
深入解析MySQL 8中的角色与用户管理
深入解析MySQL 8中的角色与用户管理
1089 3
|
关系型数据库 MySQL Linux
MySQL免编译安装和用户管理(转)
MySQL免编译安装和用户管理(转)
166 1
|
关系型数据库 MySQL 数据库
MySQL用户权限管理你知道多少?
MySQL用户权限管理你知道多少?
524 0
|
关系型数据库 MySQL 数据库
5.Mysql 用户权限管理
5.Mysql 用户权限管理
294 0
|
存储 关系型数据库 MySQL
【MySQL】用户管理
【MySQL】用户管理
295 0

推荐镜像

更多