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';
相关推荐
isNotNullX14 分钟前
一文解读OLAP的工具和应用软件
大数据·数据库·etl
小诸葛的博客2 小时前
pg入门1——使用容器启动一个pg
数据库
sleP4o2 小时前
Python操作MySQL
开发语言·python·mysql
洛寒瑜2 小时前
【读书笔记-《30天自制操作系统》-23】Day24
开发语言·汇编·笔记·操作系统·应用程序
大熊程序猿3 小时前
python 读取excel数据存储到mysql
数据库·python·mysql
落落落sss3 小时前
sharding-jdbc分库分表
android·java·开发语言·数据库·servlet·oracle
jnrjian3 小时前
Oracle 启动动态采样 自适应执行计划
数据库·oracle
星迹日3 小时前
C语言:联合和枚举
c语言·开发语言·经验分享·笔记
知识分享小能手3 小时前
mysql学习教程,从入门到精通,SQL DISTINCT 子句 (16)
大数据·开发语言·sql·学习·mysql·数据分析·数据库开发