Mysql 被设计为一个可移植的数据库,几乎所有的操作系统上都可以运行。
数据库和实例
数据库:物理操作系统文件或其他形式文件类型的集合
实例:MySQL数据库由后台线程以及一个共享内存区组成。
存储引擎
Mysql数据库区别其他的数据库的最重要的特点是其插件式的表存储。存储引擎是基于表的,而不是数据库
mysql> show ENGINES\G
*************************** 1. row ***************************
Engine: MyISAM
Support: YES
Comment: MyISAM storage engine
Transactions: NO
XA: NO
Savepoints: NO
*************************** 2. row ***************************
Engine: PERFORMANCE_SCHEMA
Support: YES
Comment: Performance Schema
Transactions: NO
XA: NO
Savepoints: NO
*************************** 3. row ***************************
Engine: MRG_MYISAM
Support: YES
Comment: Collection of identical MyISAM tables
Transactions: NO
XA: NO
Savepoints: NO
*************************** 4. row ***************************
Engine: InnoDB
Support: DEFAULT
Comment: Supports transactions, row-level locking, and foreign keys
Transactions: YES
XA: YES
Savepoints: YES
*************************** 5. row ***************************
Engine: CSV
Support: YES
Comment: CSV storage engine
Transactions: NO
XA: NO
Savepoints: NO
*************************** 6. row ***************************
Engine: MEMORY
Support: YES
Comment: Hash based, stored in memory, useful for temporary tables
Transactions: NO
XA: NO
Savepoints: NO
6 rows in set (0.00 sec)
存储引擎介绍
InnoDB
InnoDB支持事务,其目标是面向在线事务处理的应用。其特点就是行锁、支持事务、支持事务,并类似于Oracle的非锁定读,及默认读取操作不会产生锁。MyISAM
MyISAM不支持事务,表锁,支持全文索引,主要面向一些OLAP数据库应用。M有ISAM比较特殊的地方是它的缓冲池只缓存索引文件,而不缓存数据文件。MyISAM由MYD和MYI组成,MYD用来存放数据文件,MYI用来存放索引文件。NDB
优点:NDB的特点是将数据存放在内存中,因此速度极快。
缺点:sql解析是通过Mysql底层实现的,因此解析join会有极大的网络开销,查询数据非常慢Memory
优点:查询速度极快(将数据存放在内存中)
缺点:数据库重启,数据丢失Archive
只支持INSERT和SELECT操作,数据压缩比例可以达到1:10,非常时候做日志数据库的存储引擎Federated
并不是用于存储数据的而是用于指向远程数据库的表
mysql> use mysql;select host,user,password from user\G
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
*************************** 1. row ***************************
host: localhost
user: root
password: *45E020EC6D94D9EC584FE3E2BA2DF0EFB65080A1
*************************** 2. row ***************************
host: xxx
user: root
password:
*************************** 3. row ***************************
host: 127.0.0.1
user: root
password:
*************************** 4. row ***************************
host: ::1
user: root
password:
*************************** 5. row ***************************
host: localhost
user:
password:
*************************** 6. row ***************************
host: %
user: chenyang
password: *45E020EC6D94D9EC584FE3E2BA2DF0EFB65080A1
7 rows in set (0.00 sec)