MySQL入门
前言
今天打算深入和大家讲讲MYSQL的入门,和大家分享一下MYSQL中的账号管理、四大引擎、DDL(数据定义语言)、六大约束等相关知识,想深入学习的小伙伴们可以搬好小板凳开始看我以下的一系列操作啦!
思维导图
账号管理
首先,和大家来讲讲账号管理 !
一、使用grant命令来分配权限
格式如下:
grant 权限 on 数据库对象 to 用户 identified by 密 码
例1:给数据库中的某个用户授予所有权限
grant all on test.* to 'root'@'%' identified by '123456' ;
with grant option;
这条命令是给root@%这个用户对应的test数据库分配所有操作权限
identified by是需要进行的一个密码认证!
例2:给某个用户授予增删改查的权限
grant select, insert, update, delete on test.* to 'root'@'%'
identified by '123456' with grant option;
这条命令给root@%这个用户对应的test数据库授予了增删改查的操作权限
例3:查看某个用户的权限
show grants for 'root'@'%';
例5:创建zara账号,密码zara123,只拥有TUTORIALS的权限
GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP
ON TUTORIALS.*
TO 'zara'@'localhost'
IDENTIFIED BY 'zara123';
二、账号的创建和修改
1、创建账号并授予所有权限
GRANT ALL PRIVILEGES ON *.* TO 'zhangsan'@'%' IDENTIFIED BY
'zhangsan123' WITH GRANT OPTION;
运行结果:
2、修改密码
use mysql;#使用数据库
update user set authentication_string=password('123456')
where user='zhangsan';
flush privileges;#刷新权限
3、创建数据库
CREATE DATABASE 数据库名;
MYSQL中默认表的权限
按从大到小的顺序来看:
1、user表(用户层权限)
以下这张表格是关于user用户层权限中字段名的一些解释:
字段名 | 解释 |
---|---|
Select_priv | Y 表示拥有所有权限,反之则没有 |
Select_priv | N 表示需要到下一级db表中进行权限分配 |
% | 通配符 表示任意的意思 |
2、db表(数据库层权限)
以下这张d表是关于db表中一些字段名的解释:
字段名 | 解释 |
---|---|
Select_priv | 查询 |
Insert_priv | 增加 |
Update_priv | 更新 |
Select_priv | 查询 |
Delete_priv | 删除 |
Create_priv |