国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

MySQL 官方存儲引擎

2024-07-24 12:32:28
字體:
來源:轉載
供稿:網友
        存儲引擎是為不同的表類型處理 SQL 操作的 MySql 組件。InnoDB 是默認的、最通用的存儲引擎,也是官方推薦使用的存儲引擎,除非一些特定案例。MySql 5.6 中的 CREATE TABLE 語句創建的表的存儲引擎默認就是 InnoDB。
 
       MySql 服務器使用的是一個可插拔存儲引擎架構,它能夠在運行的時候動態加載或者卸載這些存儲引擎。
 
可以使用 SHOW ENGINES 語句來查看你的 MySql 服務器所支持的存儲引擎。Support 列里的值指示出是否一個引擎可以被你使用:YES、NO 以及 DEFAULT 值分別表示某存儲引擎是可用、不可用、可用并且是當前默認的存儲引擎。
  
MySql 5.6 所支持的存儲引擎
 
·         InnoDB:MySql 5.6 版本默認的存儲引擎。InnoDB 是一個事務安全的存儲引擎,它具備提交、回滾以及崩潰恢復的功能以保護用戶數據。InnoDB 的行級別鎖定以及 Oracle 風格的一致性無鎖讀提升了它的多用戶并發數以及性能。InnoDB 將用戶數據存儲在聚集索引中以減少基于主鍵的普通查詢所帶來的 I/O 開銷。為了保證數據的完整性,InnoDB 還支持外鍵約束。
 
·         MyISAM:表級別的鎖定限制了它在讀寫負載方面的性能,因此它經常應用于只讀或者以讀為主的數據場景。
 
·         Memory:在內存中存儲所有數據,應用于對非關鍵數據由快速查找的場景。Memory 引擎曾被稱為 HEAP 引擎。它的使用案例正在減少:InnoDB 的內存緩沖區為將大部分或全部數據保持在內存提供了一個通用并耐用的方式,NDBCLUSTER 為大分布式數據集提供了快速的 key-value 訪問。
 
·         CSV:它的表真的是以逗號分隔的文本文件。CSV 表允許你以 CSV 格式導入導出數據,以相同的讀和寫的格式和腳本和應用交互數據。由于 CSV 表沒有索引,你最好是在普通操作中將數據放在 InnoDB 表里,只有在導入或導出階段使用一下 CSV 表。
 
·         Archive:黑洞存儲引擎,類似于 Unix 的 /dev/null,Archive 只接收但卻并不保存數據。對這種引擎的表的查詢常常返回一個空集。這種表可以應用于 DML 語句需要發送到從服務器,但主服務器并不會保留這種數據的備份的主從配置中。
 
·         NDB:(又名 NDBCLUSTER)——這種集群數據引擎尤其適合于需要最高程度的正常運行時間和可用性的應用。注意:NDB 存儲引擎在標準 MySql 5.6 版本里并不被支持。目前能夠支持 MySql 集群的版本有:基于 MySql 5.1 的 MySQL Cluster NDB 7.1;基于 MySql 5.5 的 MySQL Cluster NDB 7.2;基于 MySql 5.6 的 MySQL Cluster NDB 7.3。同樣基于 MySql 5.6 的 MySQL Cluster NDB 7.4 目前正處于研發階段。
 
·         Merge:允許 MySql DBA 或開發者將一系列相同的 MyISAM 表進行分組,并把它們作為一個對象進行引用。適用于超大規模數據場景,如數據倉庫。
 
·         Federated:提供了從多個物理機上聯接不同的 MySql 服務器來創建一個邏輯數據庫的能力。適用于分布式或者數據市場的場景。
 
·         Example:這種存儲引擎用以保存闡明如何開始寫新的存儲引擎的 MySql 源碼的例子。它主要針對于有興趣的開發人員。這種存儲引擎就是一個啥事也不做的 "存根"。你可以使用這種引擎創建表,但是你無法向其保存任何數據,也無法從它們檢索任何索引。
 
對于整臺服務器或整個 schema 你并不受限于使用同一種存儲引擎。你可以為所有表定義存儲引擎。比如,一個應用可能以 InnoDB 表為主,輔以一個 CSV 表用以導出數據到電子表格,少許 MEMORY 表用以臨時工作空間。
  
·         InnoDB 在 MySQL 5.7.5 及以后的版本才支持地理空間索引
 
·         InnoDB 通過其自適應哈希索引的特性內置進行哈希索引優化
 
·         InnoDB 在 MySql 5.6.4 及以后版本才能支持 FULLTEXT 索引
 
·         MyISAM 只能在行壓縮格式時支持數據壓縮。使用了行壓縮的 MyISAM 表只讀
 
·         InnoDB 表壓縮要求 InnoDB Barracuda 文件格式
 
·         MySql 的數據加密是由服務器的加密函數提供,并非存儲引擎
 
·         主從支持、備份/時間點恢復等功能也是由服務器提供,而并非存儲引擎。

(編輯:武林網)

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 平安县| 麻阳| 龙南县| 香格里拉县| 巩留县| 忻州市| 古田县| 宜宾县| 吐鲁番市| 嘉祥县| 清原| 保康县| 蕉岭县| 衡阳县| 衡南县| 淄博市| 长春市| 堆龙德庆县| 大同市| 湘潭县| 蒲城县| 台山市| 宁河县| 龙游县| 安福县| 开化县| 茌平县| 嵊泗县| 开鲁县| 南京市| 阿尔山市| 六安市| 通州区| 锦屏县| 黎川县| 长寿区| 轮台县| 综艺| 新乡县| 崇文区| 亳州市|