从今天开始,打算好好学学一学 MySQL 数据库,从最简单的数据库操作(创建库,表,键,查询,修改,插入等)到索引,触发器,日志,锁和如果优化等等,来系统学习一下。计划一个月达到熟悉的水平,可以应对大部门面试的程度。
好了,废话不多说了,直接开始吧。
首先从安装开始,这里不打算详细介绍了,百度一下都有。
我是从这个网址下载的 https://dev.mysql.com/downloads/windows/installer/5.7.html
版本是 5.7,安装很傻瓜一路下一步就行。
数据库的基本操作
直接上手操作吧:
创建数据库
MySQL 安装完成之后,会创建几个必须的数据库, 用 SHOW DATABASES; 可以查看
image.png
创建数据库: CREATE DATABASE database_name;
image.png
再次查看所有的数据库:
image.png
keyikanda
可以看到新建的数据库了。
删除数据库
DROP DATABASE database_name;
超级容易是不是,在公司可不能这么干,删了真得跑路了。
image.png
MySQL 存储引擎
MySQL 支持的引擎有:InnoDB, MyISAM, Memory, Merge, Archive, Federated, CSV, BLACKHOLE 等。可以用 SHOW ENGINES 来查看。
image.png
InnoDB存储引擎
InnoDB 存储引擎支持事务,特点是行锁设计,支持外键。从 MySQL 5.5.8 开始 InnoDB 是默认引擎。通过多版本并发控制(MVCC)获得高并发性。提供了插入缓冲,二次写,自适应哈希,预读等高性能功能。
MyISAM存储引擎
MyISAM 存储引擎不支持事务,表锁设计,支持全文索引。
其他的存储引擎不做过多介绍,用的都不太多。下面来做个比较如何选择引擎:
image.png
如果要提供提交、回滚和崩溃恢复能力并要求并发,选择 InnoDB。如果数据表主要来插入和查询,则用 MyISAM。如果只存放临时数据,数据量不大,不需要较高的安全性,选择 Memory。如果只有 INSERT 和 SELECT 操作,选择 Archive 引擎。
网友评论