国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

directory search
前言 MySQL的使用 MySQL多表同時刪除方案 MySQL跨表、多表更新SQL語句總結(jié) MySQL存儲引擎 安裝 常規(guī)方式編譯安裝MySQL 采用cmake方式編譯安裝MySQL 使用rpm包安裝MySQL 使用yum方式安裝MySQL 采用二進制方式免編譯安裝MySQL 多實例的安裝 什么是多實例 多實例的作用、問題以及應(yīng)用場景 多實例安裝01【推薦】 多實例官方安裝方案02 啟動、用戶和權(quán)限管理 單實例MySQL的啟動和關(guān)閉的方法 設(shè)置及修改MySQL root用戶密碼 找回丟失的MySQL root用戶密碼 創(chuàng)建MySQL用戶及用戶權(quán)限管理 基礎(chǔ)命令的操作 MySQL庫和表相關(guān)操作 MySQL中的索引操作 MySQL常用命令 MySQL的錯誤代碼 MySQL復(fù)習(xí)秘籍 備份與恢復(fù) 備份 恢復(fù) mysqlbinlog命令 服務(wù)日志 主從復(fù)制 主從復(fù)制部署配置問題匯總 主從復(fù)制讀寫分離 災(zāi)難恢復(fù) 配置phpmyadmin連接多實例MySQL MySQL語句大全 用戶創(chuàng)建、權(quán)限、刪除 數(shù)據(jù)庫與表顯示、創(chuàng)建、刪除 Mysql表復(fù)制及備份還原 數(shù)據(jù)庫表中數(shù)據(jù)操作 修改表中的指定一條數(shù)據(jù) 查詢表 日志 批量修改Mysql表引擎為InnoDB的方法 數(shù)據(jù)庫抽象層 PDO PDO對象常用方法 PDO 事務(wù)處理 PDO 與 MySQLi 二者效率簡單比較 大小寫敏感性 lower_case_table_names CentOS7安裝MySQL5.7密碼查看與修改
characters

MySQL常用存儲引擎

MySQL常用存儲引擎之MyISAM

MySQL 5.5 之前版本默認存儲引擎,在排序、分組等操作中,當數(shù)量超過一定大小之后,由查詢優(yōu)化器建立的臨時表。

MyISAM 存儲引擎表由 MYD (表數(shù)據(jù)) 、MYI (表索引) 與 frm (表結(jié)構(gòu)) 組成。

MyISAM 特性

  • 并發(fā)性與鎖級別

表級鎖

  • 表損壞修復(fù)

check table tableName
repair table tabelName
  • MyISAM 表支持的索引類型

fulltext

  • MyISAM表支持數(shù)據(jù)壓縮

myisampack

壓縮后的表無法進行寫操作,只能進行讀操作。

MyISAM限制

在 MySQL 版本小于 5.0 時,默認表大小為 4G,如存儲大表則要修改表的 MAX_RowsAVG_ROW_LENGTH 參數(shù)。

在MySQL版本大于5.0時,默認支持為 256TB。

MyISAM 適用場景

非事務(wù)型應(yīng)用

只讀類應(yīng)用

空間類的應(yīng)用

MySQL常用存儲引擎之InnoDB

MySQL5.5 及之后版本默認存儲引擎。

InnoDB 使用表空間進行數(shù)據(jù)存儲

  • 如果數(shù)據(jù)庫的配置參數(shù) innodb_file_pre_table => on,那么創(chuàng)建后的 InnoDB 引擎的表將產(chǎn)生 tableName.frmtableName.ibd 文件。

  • 如果數(shù)據(jù)庫的配置參數(shù) innodb_file_pre_table => off,那么創(chuàng)建后的  InnoDB 引擎的表將產(chǎn)生 ibdata*(共享表空間) 和 tableName.frm

那么,系統(tǒng)表空間和獨立表空間要如何選擇呢?

  • innodb_file_pre_table => off 建立的表情況下,系統(tǒng)表空間無法簡單的收縮系統(tǒng)文件大小,造成大量的空間浪費,并且會產(chǎn)生大量的磁盤碎片,從而降低系統(tǒng)的性能。

  • 獨立表空間可以通過 optimize table 命令收縮系統(tǒng)文件。

  • 系統(tǒng)表空間會產(chǎn)生IO瓶頸

  • 獨立表空間可以同時向多個文件刷新數(shù)據(jù)

建議對 InnoDB 使用獨立表空間,即 innodb_file_pre_table => on

InnoDB 特性

  • InnoDB 是一種事務(wù)性存儲引擎

  • 完全支持事務(wù)的 ACID 特性

  • InnoDB 支持行級鎖

行級鎖可以最大程度的支持并發(fā)

行級鎖是有存儲引擎層實現(xiàn)

  • 鎖的類型:

  • 共享鎖(也稱讀鎖)

  • 獨占鎖(也稱寫鎖)

  • InnoDB 狀態(tài)檢查

show engine innodb status
  • 適用場景

InnoDB適用于大多數(shù) OLTP 應(yīng)用

MySQL常用存儲引擎之CSV

文件系統(tǒng)存儲特點

數(shù)據(jù)以文本方式存儲在文件中,他們分別包含有如下文件:

.csv 文件存儲表內(nèi)容

.csm 文件存儲標的元數(shù)據(jù)如表狀態(tài)和數(shù)據(jù)量

.frm 文件存儲表結(jié)構(gòu)信息

CSV文件存儲的特點
  • 以 csv 格式進行數(shù)據(jù)存儲

  • 所有列必須都是不能為 null 的數(shù)據(jù)

  • 不支持索引

  • 可以對數(shù)據(jù)文件直接編輯

適用場景

適合作為數(shù)據(jù)交換的中間表

MySQL常用存儲引擎之Archive

以 zlib 對表數(shù)據(jù)進行壓縮,磁盤 I/O更少

數(shù)據(jù)存儲在 tableName.ARZ 為后綴的文件中

Archive 文件存儲特點

只支持 insertselect 操作

只允許在自增 ID 列上加索引

使用場景

日志和數(shù)據(jù)采集類應(yīng)用

MySQL常用存儲引擎之Memory

文件系統(tǒng)存儲特點

也稱 heap 存儲引擎,所以數(shù)據(jù)保存在內(nèi)存中。

功能特點

  • 支持 hash 索引(等值查找快)和 Btree 索引(范圍查找快)

  • 所有字段都為固定長度,例如:varchar(10) = char(10)

  • 不支持 BLOB/TEXT 等大字段

  • Memory 存儲引擎使用表級鎖

  • 最大大小由 max_heap_table_size 參數(shù)決定

使用場景

  • 用于查找或者是映射表,例如:郵編和地區(qū)的對應(yīng)表

  • 用于保存數(shù)據(jù)分析中產(chǎn)生的中間表

  • 用于緩存周期性聚合數(shù)據(jù)的結(jié)果表

Memory 數(shù)據(jù)易丟失,所以要求數(shù)據(jù)可再生。

MySQL常用存儲引擎之Federated

默認禁止,啟用需要在啟動時增加 federated 參數(shù)。

mysql://user_name[:password]@host_name[:port_num]/db_name/tbl_name

功能特點

  • 提供了訪問遠程MySQL服務(wù)器上表的方法

  • 本地不存儲數(shù)據(jù),數(shù)據(jù)全部放到遠程服務(wù)器上

  • 本地需要保存表結(jié)構(gòu)和遠程服務(wù)器的連接信息


Previous article: Next article: