一千行MySQL学习笔记(十二)
/* 用户和权限管理 */ -----------
用户信息表:mysql.user
-- 刷新权限
FLUSH PRIVILEGES
-- 增加用户
CREATE USER 用户名 IDENTIFIED BY [PASSWORD] 密码(字符串)
- 必须拥有mysql数据库的全局CREATE USER权限,或拥有INSERT权限。
- 只能创建用户,不能赋予权限。
- 用户名,注意引号:如 'user_name'@'192.168.1.1'- 密码也需引号,纯数字密码也要加引号
- 要在纯文本中指定密码,需忽略PASSWORD关键词。要把密码指定为由PASSWORD()函数返回的混编值,需包含关键字PASSWORD
-- 重命名用户
RENAME USER old_user TO new_user
-- 设置密码
SET PASSWORD = PASSWORD('密码') -- 为当前用户设置密码
SET PASSWORD FOR 用户名 = PASSWORD('密码') -- 为指定用户设置密码
-- 删除用户
DROP USER 用户名
-- 分配权限/添加用户
GRANT 权限列表 ON 表名 TO 用户名 [IDENTIFIED BY [PASSWORD] 'password']
- all privileges 表示所有权限
- *.* 表示所有库的所有表
- 库名.表名 表示某库下面的某表
-- 查看权限
SHOW GRANTS FOR 用户名 -- 查看当前用户权限
SHOW GRANTS; 或 SHOW GRANTS FOR CURRENT_USER; 或 SHOW GRANTS FOR CURRENT_USER();
-- 撤消权限
REVOKE 权限列表 ON 表名 FROM 用户名
REVOKE ALL PRIVILEGES, GRANT OPTION FROM 用户名-- 撤销所有权限
-- 权限层级
-- 要使用GRANT或REVOKE,您必须拥有GRANT OPTION权限,并且您必须用于您正在授予或撤销的权限。
全局层级:全局权限适用于一个给定服务器中的所有数据库,mysql.user
GRANT ALL ON *.*和 REVOKE ALL ON *.*只授予和撤销全局权限。
数据库层级:数据库权限适用于一个给定数据库中的所有目标,mysql.db, mysql.host
GRANT ALL ON db_name.*和REVOKE ALL ON db_name.*只授予和撤销数据库权限。
表层级:表权限适用于一个给定表中的所有列,mysql.talbes_priv
GRANT ALL ON db_name.tbl_name和REVOKE ALL ON db_name.tbl_name只授予和撤销表权限。
列层级:列权限适用于一个给定表中的单一列,mysql.columns_priv
当使用REVOKE时,您必须指定与被授权列相同的列。
-- 权限列表
ALL [PRIVILEGES] -- 设置除GRANT OPTION之外的所有简单权限
ALTER -- 允许使用ALTER TABLE
ALTER ROUTINE -- 更改或取消已存储的子程序
CREATE -- 允许使用CREATE TABLE
CREATE ROUTINE -- 创建已存储的子程序
CREATE TEMPORARY TABLES -- 允许使用CREATE TEMPORARY TABLE
CREATE USER -- 允许使用CREATE USER, DROP USER, RENAME USER和REVOKE ALL PRIVILEGES。
CREATE VIEW -- 允许使用CREATE VIEW
DELETE -- 允许使用DELETE
DROP -- 允许使用DROP TABLE
EXECUTE -- 允许用户运行已存储的子程序
FILE -- 允许使用SELECT...INTO OUTFILE和LOAD DATA INFILE
INDEX -- 允许使用CREATE INDEX和DROP INDEX
INSERT -- 允许使用INSERT
LOCK TABLES -- 允许对您拥有SELECT权限的表使用LOCK TABLES
PROCESS -- 允许使用SHOW FULL PROCESSLIST
REFERENCES -- 未被实施
RELOAD -- 允许使用FLUSH
REPLICATION CLIENT -- 允许用户询问从属服务器或主服务器的地址
REPLICATION SLAVE -- 用于复制型从属服务器(从主服务器中读取二进制日志事件)
SELECT -- 允许使用SELECT
SHOW DATABASES -- 显示所有数据库
SHOW VIEW -- 允许使用SHOW CREATE VIEW
SHUTDOWN -- 允许使用mysqladmin shutdown
SUPER -- 允许使用CHANGE MASTER, KILL, PURGE MASTER LOGS和SET GLOBAL语句,mysqladmin debug命令;允许您连接(一次),即使已达到max_connections。
UPDATE -- 允许使用UPDATEUSAGE -- “无权限”的同义词
GRANT OPTION -- 允许授予权限
/* 表维护 */
-- 分析和存储表的关键字分布
ANALYZE [LOCAL | NO_WRITE_TO_BINLOG] TABLE 表名 ...
-- 检查一个或多个表是否有错误
CHECK TABLE tbl_name [, tbl_name] ... [option] ...
option = {QUICK | FAST | MEDIUM | EXTENDED | CHANGED}
-- 整理数据文件的碎片
OPTIMIZE [LOCAL | NO_WRITE_TO_BINLOG] TABLE tbl_name [, tbl_name] ...
/* 杂项 */ ------------------
1. 可用反引号(`)为标识符(库名、表名、字段名、索引、别名)包裹,以避免与关键字重名!中文也可以作为标识符!
2. 每个库目录存在一个保存当前数据库的选项文件db.opt。
3. 注释: 单行注释 # 注释内容 多行注释 /* 注释内容 */ 单行注释 -- 注释内容 (标准SQL注释风格,要求双破折号后加一空格符(空格、TAB、换行等))
4. 模式通配符: _ 任意单个字符
% 任意多个字符,甚至包括零字符 单引号需要进行转义 \'
5. CMD命令行内的语句结束符可以为 ";", "\G", "\g",仅影响显示结果。其他地方还是用分号结束。delimiter 可修改当前对话的语句结束符。
6. SQL对大小写不敏感
7. 清除已有语句:\c
(剧终) (作者:Shocker 来源:http://www.cnblogs.com/shockerli/p/1000-plus-line-mysql-notes.html)
转载于:https://www.cnblogs.com/Grace7582/p/4743690.html
一千行MySQL学习笔记(十二)相关推荐
- [转]一千行MySQL学习笔记
Shocker /* 启动MySQL */ net start mysql/* 连接与断开服务器 */ mysql -h 地址 -P 端口 -u 用户名 -p 密码/* 跳过权限验证登录MySQL * ...
- 一千行 MySQL 学习笔记,值得大家收藏!
点击上方"Java学习之道",选择"关注"公众号 每天10:24,干货准时送达! 本文转载自:https://tinyurl.com/y3ua6bqf 作者:格 ...
- 一千行 MySQL 学习笔记,看完就会了
/* Windows服务 */ -- 启动MySQLnet start mysql -- 创建Windows服务sc create mysql binPath= mysqld_bin_path(注意: ...
- 一千行MySQL学习笔记
/* 启动MySQL */ net start mysql/* 连接与断开服务器 */ mysql -h 地址 -P 端口 -u 用户名 -p 密码/* 跳过权限验证登录MySQL */ mysqld ...
- 一千行 MySQL 学习笔记
点击上方"程序员江湖",选择"置顶或者星标" 你关注的就是我关心的! 做者:格物 原文地址:https://shockerli.net/post/1000-li ...
- 不藏了,我的一千行 MySQL 学习笔记(2万字长文)
来源:https://shockerli.net/post/1000-line-mysql-note/ 作者:格物 Windows服务 -- 启动MySQLnet start mysql -- 创建W ...
- 『转』一千行MySQL学习笔记
1 /* 启动MySQL */ 2 net start mysql 3 4 /* 连接与断开服务器 */ 5 mysql -h 地址 -P 端口 -u 用户名 -p 密码 6 7 /* 跳过权限验证登 ...
- 一千行MySQL学习笔记(MySQL常见SQL语句全详解)
/* 启动MySQL */ net start mysql/* 连接与断开服务器 */ mysql -h 地址 -P 端口 -u 用户名 -p 密码/* 跳过权限验证登录MySQL */ mysqld ...
- Python语言入门这一篇就够了-学习笔记(十二万字)
Python语言入门这一篇就够了-学习笔记(十二万字) 友情提示:先关注收藏,再查看,12万字保姆级 Python语言从入门到精通教程. 文章目录 Python语言入门这一篇就够了-学习笔记(十二万字 ...
最新文章
- java-mybaits-00101-基础安装配制
- Apache Oltu 实现 OAuth2.0 服务端【授权码模式(Authorization Code)】
- 【C 语言】C 字符串 ( 表示方法 | strcpy | strcat | strlen | strcmp )
- SSM中进行Junit单元测试时无法注入service
- UE4_下载源码并编译
- SBUS协议数据演示
- HTTP请求/响应原理
- java gps解析_GPS经纬度可以用来Java解析
- 我是一个粉刷匠用计算机弹,《我是一个粉刷匠》,钢琴双手弹的谱子,,,急用,,,谢谢...
- web网页qq客服功能
- 老照片瞬间修复神器!快帮你家的长辈恢复照片去吧
- 如何准备机器学习数据集_机器学习演练第一部分:准备数据
- 三星android7要更新8,三星Bixby Voice将停止支持安卓7.0/8.0,用户可以升级系统使用...
- C++ 单例模式学习(Singleton)
- 车载冰箱E-mark认证要多长时间?
- 关于小程序widthFix图片高度不能自适应的问题
- I Need Some Sleep / Eels
- QT QGraphicsItem飞舞的蝴蝶
- 中兴美国事件回顾:崛起的骄傲与威胁
- 图神经网络(五):GAT