文章目录
- 账号管理
- 创建用户并设置登录密码
- 操作用户
- 给普通用户授权和撤销
- 操作数据库
- 四大引擎
- 什么是数据库引擎
- ISAM引擎
- MyISAM引擎
- Heap引擎
- InnoDB引擎
前言
对于MySQL的理解
一、账号管理
1.创建用户并设置登陆密码
命令;create user 用户名 identified by ' 密码 ';
注意要分号结束
2.操作用户
查询所有用户
select * from user; 是mysql里面的用户表
删除用户
drop user 用户名
修改用户密码
set password for 要修改的密码
3.给普通用户授权和撤销
授权
grant privileges on databasename.tablename to username@'localhost';
撤销权限
revoke privileges on databasename.tablename from username@'localhost';
例如:撤销权限
revoke select on t232.t_student from sa@'localhost';
参数说明
(1) privileges :用户的操作权限,如SELECT,INSERT,UPDATE,DELETED登,如果要授权所有直接使用:All
(2) databasename : 数据库名
(3)tablename :表名,如果要授予用户对所有数据库和表的操作权限直接使用: *.*;
(4)username:被授权的用户名
二、操作数据库
创建数据库
create database 数据库名 或者 create database if not exitsts(如果创建的数据库存在将不会创建也不是报错)
查询所有数据库
show databases;
删除数据库
drop database 数据库名;
MySQL默认数据库介绍
(1) information_schema
是一个信息数据库,它保存着关于Mysql服务器所维护的所有其它数据库的信息
(2)mysql
核心数据库,类似于sql server中的master表,主要负责存储数据库的用户、权限设置、关键字等mysql自己需要使用的控制和管理信息;
(3)performance_schema
主要用于收集数据库服务器性能参数。并且库里表的存储引擎均为PERFORMANCE_SCHEMA,而用户是不能创建存储引擎为PERFORMANCE_SCHEMA的表。MySQL5.5默认是关闭的,需要手动开启,在配置文件里添加:
(4)test
测试数据库,没有东西;
三、四大引擎
(1)什么是数据库引擎
数据库存储引擎是数据库底层软件组织,数据库管理系统(DBMS)使用数据引擎进行创建、查询、更新和删除数据。 不同的存储引擎提供不同的存储机制、索引技巧、锁定水平等功能,使用不同的存储引擎,还可以获得特定的功能。 现在许多不同的数据库管理系统都支持多种不同的数据引擎。Mysql的核心就是存储引擎。
查看数据库引擎
语法;show engines;
(2)ISAM引擎
是一个定义明确且历经时间考验的数据表格管理方法,它在设计之时就考虑到数据库被查询的次数要远大于更新的次数。因此,ISAM执行读取操作的速度很快,而且不占用大量的内存和存储资源。ISAM的主要不足之处在于,它不支持事务处理、不支持外来键、不能够容错、也不支持索引。因为ISAM不支持事务,所以如果你的硬盘崩溃了,那么数据文件就无法恢复了。所以如果你正在把ISAM用在关键任务应用程序里,那就必须经常备份你所有的实时数据,通过其复制特性,MySQL能够支持这样的备份应用程序。
(3)MyISAM引擎
MyISAM是MySQL的ISAM扩展格式。除了提供ISAM里所没有的索引(ISAM允许没有任何索引和主键的表存在,索引都是保存行的地址)和字段管理的大量功能,MyISAM还使用一种表格锁定的机制(表级锁),来优化多个并发的读写操作,其代价是你需要经常运行OPTIMIZE TABLE命令,来恢复被更新机制所浪费的空间,否则碎片也会随之增加,最终影响数据访问性能。MYISAM强调了快速读取操作,这可能就是为什么MySQL受到了WEB开发如此青睐的主要原因:在WEB开发中你所进行的大量数据操作都是读取操作。所以,大多数虚拟主机提供商和INTERNET平台提供商只允许使用MYISAM格式。
(4)Heap引擎
Heap存储引擎就是将数据存储在内存中,由于没有磁盘I./O的等待,所以使用该种引擎的表拥有极高的插入、更新和查询效率。这种存储引擎默认使用哈希(HASH)索引,其速度比使用B-+Tree型要快,但也可以使用B树型索引。由于这种存储引擎所存储的数据保存在内存中,所以其保存的数据具有不稳定性,比如如果mysqld进程发生异常、重启或计算机关机等等都会造成这些数据的消失,所以这种存储引擎中的表的生命周期很短,一般只使用一次。
InnoDB引擎
InnoDB数据库引擎是造就Mysql灵活性的技术的直接产品,这项技术就是mysql+api,在使用mysql的时候,你所面对的每一个挑战几乎都源于isam和myisam数据库引擎不支持事务处理也不支持外来键。InnoDB的特点,InnoDB要比isam和myisam引擎慢
总结
创建数据库时一定要设置字符集为(utf8)
排序规则(utf8_general_ci)
删除任何东西要慎用!!!