如何做网站的搜索栏,网站空间 .de,专业集团网站建设,5 网站建设进度表存储引擎
Mysql中特有的术语#xff0c;Oracle中没有。
存储引擎就是一个表存储/组织数据的方式。不同的存储引擎#xff0c;表存储数据的方式不同。
指定存储引擎
在建表的时候可以在最后小括号的)的右边使用#xff1a; ENGINE来指定存储引擎。 CHARSET来…存储引擎
Mysql中特有的术语Oracle中没有。
存储引擎就是一个表存储/组织数据的方式。不同的存储引擎表存储数据的方式不同。
指定存储引擎
在建表的时候可以在最后小括号的)的右边使用 ENGINE来指定存储引擎。 CHARSET来指定这张表的字符编码方式。
mysql默认的存储引擎是InnoDB mysql默认的字符编码方式是utf8
建表时指定存储引擎以及字符编码方式。create table t_product(id int primary key,name varchar(255))engineInnoDB default charsetgbk;通过show create table 表名;就能看到表的存储引擎以及编码方式了
show create table t_product;
---------------------------------------------------------------------------------------------------------------------------------------------------------
| Table | Create Table|
---------------------------------------------------------------------------------------------------------------------------------------------------------
| t_product | CREATE TABLE t_product (id int NOT NULL,name varchar(255) DEFAULT NULL,PRIMARY KEY (id)
) ENGINEInnoDB DEFAULT CHARSETgbk |
---------------------------------------------------------------------------------------------------------------------------------------------------------
1 row in set (0.00 sec)查看mysql支持哪些存储引擎
输入命令
show engines \G
*************************** 1. row ***************************Engine: MEMORYSupport: YESComment: Hash based, stored in memory, useful for temporary tables
Transactions: NOXA: NOSavepoints: NO
*************************** 2. row ***************************Engine: MRG_MYISAMSupport: YESComment: Collection of identical MyISAM tables
Transactions: NOXA: NOSavepoints: NO
*************************** 3. row ***************************Engine: CSVSupport: YESComment: CSV storage engine
Transactions: NOXA: NOSavepoints: NO
*************************** 4. row ***************************Engine: FEDERATEDSupport: NOComment: Federated MySQL storage engine
Transactions: NULLXA: NULLSavepoints: NULL
*************************** 5. row ***************************Engine: PERFORMANCE_SCHEMASupport: YESComment: Performance Schema
Transactions: NOXA: NOSavepoints: NO
*************************** 6. row ***************************Engine: MyISAMSupport: YESComment: MyISAM storage engine
Transactions: NOXA: NOSavepoints: NO
*************************** 7. row ***************************Engine: InnoDBSupport: DEFAULTComment: Supports transactions, row-level locking, and foreign keys
Transactions: YESXA: YESSavepoints: YES
*************************** 8. row ***************************Engine: BLACKHOLESupport: YESComment: /dev/null storage engine (anything you write to it disappears)
Transactions: NOXA: NOSavepoints: NO
*************************** 9. row ***************************Engine: ARCHIVESupport: YESComment: Archive storage engine
Transactions: NOXA: NOSavepoints: NO
9 rows in set (0.00 sec)MyISAM
它管理的表具有以下特征 格式文件——存储表的结构mytable.frm 数据文件——存储表中的内容mytable.MYD 索引文件——存储表上索引mytable.MYI索引是一本书的目录缩小扫描范围提高查询效率的一种机制。
对于一张表来说只要是主键或者加有unique约束字段的都会自动创建索引。
MyISAM存储引擎特点 可被转换为压缩、只读表来节省空间这是这种存储引擎的优势 不支持事务机制安全性较低。
InnoDB
mysql的默认存储引擎。
InnoDB支持事务支持数据库崩溃后的恢复机制。 – 每个 InnoDB 表在数据库目录中以.frm 格式文件表示– InnoDB 表空间 tablespace 被用于存储表的内容表空间是一个逻辑名称。表空间存储数据索引。– 提供一组用来记录事务性活动的日志文件– 用 COMMIT(提交)、SAVEPOINT 及ROLLBACK(回滚)支持事务处理– 提供全 ACID 兼容– 在 MySQL 服务器崩溃后提供自动恢复– 多版本MVCC和行级锁定– 支持外键及引用的完整性包括级联删除和更新MEMORY
使用 MEMORY 存储引擎的表其数据存储在内存中且行的长度固定这两个特点使得 MEMORY 存储引擎非常快。 – 在数据库目录内每个表均以.frm 格式的文件表示。– 表数据及索引被存储在内存中。目的就是快查询快– 表级锁机制。– 不能包含 TEXT 或 BLOB 字段。这个引擎的优点就是在于查询效率极高不需要和硬盘交互但是也极不安全电脑断电之后数据就会消失因为索引和数据都是存在内存中的。