思维导图:
一、MySQL简介: ? ? ? ?1、What:(MySQL概念):Mysql是一个关系型数据库管理系统(这里补充一点,数据库分为关系型数据库和非关系型数据库,关系型数据库有SqlServer、MySQL以及Oracle等等,非关系型数据库有MongoDB、Cassandra以及Redis等等),由瑞典MySQL AB公司开发,目前属于Oracle旗下产品。MySQL特点:使用完整的管理系统统一管理,易于查询 ? ? ? ?2、Why(为什么要使用MySQL):因为数据在内存中容易丢失,?要想永久的保存,就要使用MySQL来进行保存,又由于数据在文件中,不便于操作。 ? ? ? ?3、Where:(在哪些地方要使用MySQl):凡是需要持久化存储数据的地方。 ? ? ? ?4、术语: ?? ? ??? 4.1DB: ? ? ? ? ? ? ? ? ? ? ? 数据库(database):存储数据的“仓库”。它保存了一系列有组织的数据。 ? ? ? ? ? 4.2DBMS: ? ? ? ? ? ? ? ? ? ? ? 数据库管理系统(Database Management System)。数据库是通过DBMS创建和操作的容器 ? ? ? ? ? 4.3SQL: ? ? ? ? ? ? ? ? ? ? ? 结构化查询语言(Structure Query Language):专门用来与数据库通信的语言 ?
二、MySQL的账号管理(代码是在MySQL中写的): ? ? ? ? 1、基础操作: ? ? ? ? ? ? ?1.1查看所有的用户:
--查看所有的用户 select * from user
效果显示:
1.2、新建用户
--创建一个用户 create user ls;
1.3、查看用户中的主机地址,用户名以及密码:
--查看用户中的主机地址,用户名以及密码 select host,user,authentication_string from user
?1.4、将新用户李四的密码设置成123456:
--将李四的密码设置成123456 ALTER user ls IDENTIFIED with mysql_native_password by '123456'--(图中密码已经加密了)
?1.5、效果展示:为了体现MySQL的安全性,其密码形式是加密
?2、设置权限:
2.1 将某个库的某个表的权限赋值给某个用户(grant to)
2.1.1:通用格式:Grant PRIVILEGES on database_name.table_name to Username@'host';
Grant INSERT on sys.sys_config to ls@'%';
2.2?将某个库的某个表的所有权限赋值给某个用户(grant to):
2.2.1:通用格式:Grant?ALL?on database_name.table_name to Username@'host'
Grant all on sys.sys_config to ls@'%';
??2.3 将某个库的所有表的所有权限赋值给某个用户(grant to):
??2.3.1通用格式:Grant?ALL(所有权限)??on database_name.*(所有表)to Username@'host';
Grant all on sys.*to ls@'%';
? 3、撤销权限:
? 3.1:撤销某用户使用某数据库中某个表的某个权限
? 3.1.2:通用格式:REVOKE PRIVILEGES on database_name.table_name FROM Username@'host'
REVOKE INSERT on sys.sys_config FROM ls@'%';
? 3.2:撤销某用户使用某数据库中某个表的所有权限:
? 3.2.2:通用格式:REVOKE ALL on database_name.table_name FROM Username@'host'?
REVOKE all on sys.sys_config FROM ls@'%';
?3.3:撤销某用户使用某数据库中所有表的所有权限:
?3.3.2:通用格式:REVOKE?ALL?on database_name.*FROM Username@'host'?
REVOKE all on sys.*FROM ls@'%';
? ? 4、查询权限(show....for):
show grants for 'ls'@'%';
? ?5、刷新权限代码
flush PRIVILEGES
三:建库:
? ? ? ? 1、建库代码:
create database XCX
? ? 2、带有编码的建库:
create database if not EXISTS XCX?DEFAULT charset utf8 collate utf8_general _ci
四:四大引擎: ? ? ? ? ?四大引擎分别是:InooDB、MyISAM、MEMORY、SHOW ENGINES。其中InooDB是支持事物的,而MyISAM不支持事物,但是MyISAM查询效率高。 ? ? ? ? ?补充:在此InooDB、MyISAM两种数据引擎比较常用, ? ?1.InooDB: ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 1、InnoDB数据库引擎是早就Mysql灵活性的技术的直接产品,这项技术就是mysql+api,在使用mysql的时候,你所面对的每一个挑战几乎都 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 2、源于isam和myisam数据库引擎,支持事务处理也支持外来键。 ?
??2.MyISAM:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 1、MyISAM是MySQL的ISAM扩展格式。 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 2、MYISAM强调了快速读取操作,所以具有快速查询功能。
|