1.数据库
概念 : 长期存放在计算机内,有组织,可共享的大量数据的集合,是一个数据 "仓库"
作用 : 保存,并能安全管理数据(如:增删改查等),减少冗余...
2.数据库总览 :
MySQL , Oracle , SQL Server ,
关系型数据库通过外键关联来建立表与表之间的关系
Redis , MongoDB , ...
非关系型数据库通常指数据以对象的形式存储在数据库中,而对象之间的关系通过每个对象自身的属性来决定
4.MySQL中自带的比较重要的四张表
5.MySQL使用
5.1创建用户
create user 用户名
可以看到使用这种方式进行创建用户,用户ls是可以创建成功,但是没有密码,我们可以通过修改密码的方式去设置密码,密码是加密过的所有我们是看不懂的
ALTER USER '用户名'@'主机地址' IDENTIFIED WITH mysql_native_password BY '密码';
6 用户授权和撤销权限
6.1用户分配权限
grant 权限名on 数据库名.表名to 用户名字@'用户地址';
登录ls这个用户在没有任何授权操作之下ls是没有任何数据库的,现在我们给ls授权
#给用户ls赋予查询数据库wyy下t_mvc_book这个表的权限
grant select on wyy.t_mvc_book to ls@'%';
执行授权语句之后ls用户就多了一个数据库 ,但是ls现在只能查询这张表。
我们还可以给ls授权对数据库wyy的所有权限,以及数据库wyy中所有的表
#将数据库wyy下t_mvc_book表的所有权限给ls
grant ALL on wyy.t_mvc_book to ls@'%';
#将数据库wyy下所有表的所有权限给ls
grant ALL on wyy.* to ls@'%';
6.2撤销用户权限
revoke 权限名 on 数据库名.表名from 用户名@'地址';
现在我撤销ls的删除权限
#撤销ls对数据库wyy下t_mvc_book表的删除权限
REVOKE delete on wyy.t_mvc_book from ls@'%'
当我们撤销某个用户权限之后一定记得刷新当前权限设置
#刷新权限
flush privileges;
当我们想要查看某个用户的所有权限时
#查询某个用户权限
show grants for 'ls'@'%';
当我使用ls登录对t_mvc_book这张表进行删除操作时提示当前没有删除权限
7.MySQL数据库创建
7.1手动创建
7.2 代码创建
show databases; 查询所有数据库
8.四大引擎
具体使用哪一种引擎需要灵活选择,一个数据库中多个表可以使用不同引擎以满足各种性能和实际需求,使用合适的存储引擎,将会提高整个数据库的性能