MySQL笔记(十):MySQL管理

一、用户管理

bash 复制代码
#用户管理
-- 原因:当我们做项目开发时,可以根据不同的开发人员,赋给她相应的mysql操作权限。
-- 所以,mysql数据库管理人员(root),根据需要创建不同的用户,赋给相应的权限,供人员使用

-- 1、创建新用户
-- 解读:(1)'hsp_edu'@'localhost'表示用户的完整信息(没有空格),'hsp_edu' 是用户名,'localhost'登陆的ip地址
--       (2)123456是密码,但是注意,存放到mysql.user表时,是[assword('123456')加密后的密码
-- $A$005$nN;(X(6cW P.NxWUqwpkrnSZGNZo631s2k.nvDhDAu4qNoAzLiFWADg3
CREATE USER 'hsp_edu'@'localhost' IDENTIFIED BY '123456';

SELECT * FROM mysql.user;

SELECT SHA1('123456');-- 查看'123456'对应的加密结果,方1,7c4a8d09ca3762af61e59520943dc26494f8941b
SELECT MD5('123456');-- 方2 e10adc3949ba59abbe56e057f20f883e

SELECT `host`,`user`,`authentication_string`
	FROM mysql.user;
	
-- 删除用户
DROP USER 'hsp_edu'@'localhost';

-- 登录
bash 复制代码
-- 修改密码8.0以上得用ALTER USER '用户'@'IP' IDENTIFIED BY '新密码';
ALTER USER 'hsp_edu'@'localhost' IDENTIFIED BY 'abcdef';

二、权限管理



bash 复制代码
#演示 用户权限的管理

-- 创建一个用户(你的名字,拼音),密码123,并且只可以从本地登录,不让远程登录

CREATE USER 'css'@'localhost' IDENTIFIED BY '123';

-- 创建库和表testdb下的news表,要求:使用root创建
CREATE DATABASE testdb;

CREATE TABLE news(
	id INT,
	content VARCHAR(32));

INSERT INTO news VALUES(1,'北京新闻');

-- 给css用户分配查看news表和添加news表的权限
GRANT SELECT,INSERT
	ON testdb.`news`
	TO 'css'@'localhost';

-- 可以增加权限
GRANT UPDATE
	ON testdb.`news`
	TO 'css'@'localhost';
	
-- 修改css的密码为'abc'
ALTER USER 'css'@'localhost' IDENTIFIED BY 'abc';

-- 回收权限revoke.回收所有权限
REVOKE SELECT,UPDATE,INSERT ON testdb.`news` FROM 'css'@'localhost';
REVOKE ALL ON testdb.`news` FROM 'css'@'localhost';

-- 删除用户
DROP USER 'css'@'localhost';
相关推荐
倔强的石头_2 天前
《Kingbase护城河》——数据库存储空间全景探测与精细化瘦身实战
数据库
云技纵横2 天前
唯一索引 INSERT 死锁实战:5 秒复现交叉插入的 S 锁循环等待
sql·mysql
沉默王二2 天前
面试官:RAG 不用向量数据库,用 MySQL 硬扛?我:100 万向量不是很轻松?
mysql·面试·ai编程
冬奇Lab2 天前
每日一个开源项目(第134篇):Zvec - 阿里开源的嵌入式向量数据库,向量搜索界的 SQLite
数据库·人工智能·llm
小猿姐2 天前
MySQL Top 10 热点问题 AI 运维实战:从内核诊断到云原生运维
mysql·云原生·aiops
ClouGence3 天前
Oracle CDC 架构优化:从主库直连到 DataGuard 备库同步
数据库·后端·oracle
云技纵横3 天前
Gap Lock 死锁实战:5 秒在本地复现 MySQL 间隙锁死锁
后端·mysql
无响应de神3 天前
三、用户与权限管理
数据库·mysql
摇滚侠3 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql