简单介绍
mysql
mysql是一个典型的C/S服务结果,有自带的客户端程序(/application/mysql/bin),常用命令包括mysql、mysqladmin、mysqldump。
mysqld
mysqld是一个二进制程序,后台的守护进程,可分为单线程和多线程。
连接MySQL的方式
1.TCP/IP的连接方式:mysql -uroot -p123456 -h127.0.0.1
2.套接字连接方式:mysql -uroot -p123456 -S /tem/mysql.sock
MySQL的逻辑结构
MySQL的逻辑对象:做为管理人员或者开发人员操作的对象。
MySQL逻辑结构与Linux系统对比:
MySQL的物理结构
MySQL的最底层的物理结构是数据文件,也就是说,存储引擎层,打交道的文件,是数据文件。
存储引擎:主要负责接收上层的执行结构,取出磁盘文件和相应数据,并返回给SQL层,结构化之后生成表格,由专用线程返回给客户端。
存储引擎分为很多种类,主要为myisam和innodb,不同存储引擎的区别:存储方式、安全性、性能。
myisam:
mysql自带的表部分就是使用的myisam。
innodb:
自己创建一个表,在编译的时候已经默认指定使用innodb。
MySQL的安装
rpm、yum安装
安装方便、安装速度快、无法定制。
二进制
二进制安装是下载别人已经编译好后做的压缩包,我们通过解压、简单配置过后就可以直接使用,但不能定制功能。
编译安装
编译安装是通过下载软件源代码,然后解压、编译,可定制,但安装慢,主要为四个步骤:解压(tar)、生成(./configure) cmake、编译(make)、安装(make install)。
MySQL索引介绍
什么是MySQL索引?
在MySQL中,索引是一种特殊的数据结构,由数据表中的一列或多列组合而成,可以用来快速查询数据表中有某一特定值的数据。
索引的功能
索引相当于书的目录,可以提高数据查询的效率,提高数据库检索数据的性能。
有哪些类型的索引?
按存储方式或底层数据结构可分为:B+数索引、hash索引。
按功能逻辑可分为:普通索引、唯一索引、主键索引、全文索引。