MYSQL学习笔记三——数据库的基本操作

1.      创建数据库

 MySQL安装完成后,会在其data目录下创建几个必需的数据库,可以用“show databases;”查看当前存在的所有数据库。

1.1创建数据库是在系统磁盘上划分一块区域用于数据的存储和管理。

1.2MySQL中创建数据库的基本SQL语法:createdatabase name;name代表你想创建数据库的名字。也可以用“show create database name;”查看数据库创建信息。

2.删除数据库

删除数据库是将已经存在的数据库从磁盘空间上清除,清除之后,数据库中的所有数据也将一同被删除。

2.1删除的语法格式:“drop database name;”name为想删除数据库的名称。数据库被删除后,再查看数据库创建信息(show create database name),是会报错的,因为数据库已经不存在。

3.数据库存储引擎

数据库存储引擎是数据库底层软件组件,数据库管理系统(DBMS)使用数据引擎进行创建、查询、更新和删除数据库操作。不同存储引擎提供不同的存储机制、索引技巧、锁定水平。MySQL的核心就是存储引擎,主要包括处理事务安全表的引擎和处理非事务安全表的引擎。

MySQL支持引擎主要有InnoDB、MyISAM、Memory、Merge、Archive、Federated、CSV、Blackhole等。

3.1InnoDB存储引擎

   InnoDB是事务型数据库的首选引擎,支持事务安全表(ACID),支持行锁定和外键。5.5以后的默认存储引擎,以前是MyISAM

      3.1.1InnoDB给MySQL提供里具有提交、回滚、崩溃恢复能力的事务安全(ACID)存储引擎。InnoDB锁定在行级并且也在select语句中提供里一个类似Oracle的非锁定读。

      3.1.2InnoDB是为处理巨大数据量的最大设计,它的CPU效率可能是任何其他基于磁盘关系数据库引擎所不能匹敌的。

     3.1.3InnoDB存储引擎完全与MySQL服务器整合,InnoDB存储引擎为在主内存中缓存数据和索引而维持它自己的缓存池。InnoDB将它的表和索引存在一个逻辑表空间,和MyISAM是不同的,InnoDB的表是任何尺寸的。

       3.1.4InnoDB支持完整的外键完整性约束,每张表都会按住键顺序存放,如果没有显示定义主键,InnoDB会为每一行生成一个6B的rowid,并以此为主键。

       3.1.5被用在需要高性能的大型数据库站点上。

3.2MyISAM存储引擎

     MyISAM拥有较高的插入、查询速度,但不支持事务。在MySQL5.5以前,它是默认存储引擎。

3.3Memory存储引擎

   将表中的数据存储到内存中,为查询和引用其他表数据提供快速访问。

   当不在需要memory表的内容时,要释放被memory表使用的的内存,应该执行delete from或者truncate table或者删除整个表drop table。

3.4存储引擎的选择

功能

MyISAM

Memory

InnoDB

Archive

存储限制

256T

RAM

64T

None

支持事务

 

 

Y

 

支持全文索引

Y

 

 

 

支持数索引

Y

Y

Y

 

支持哈希索引

 

Y

 

 

支持数据存储

 

N/A

Y

 

支持外键

 

 

Y

 

 

如果要提交、回滚和崩溃恢复能力的事务安全,并要求实现并发控制,InnoDB是一个选择。

如果用来插入和查询数据,则MyISAM提供较高的处理效率。

如果临时存放数据,数据量不大,可选择memory引擎

如果只有insert和select操作,可以选择archive引擎,支持高并发插入,但是不安全,适合存储归档数据,特别是日志信息。

可以利用“show variables like ‘storage_engine’”查询默认的存储引擎,如果不可以,也可以这样输入"show variables like '%storage_engine%'"。

注意:mysql中命令大小写基本通用,但是\g表示命令结束与;效果等同,但是\G表示旋转90度的显示,主要体现在显示效果上。

你可能感兴趣的:(学习笔记)