<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                ## MySQL常用存儲引擎 ### MySQL常用存儲引擎之MyISAM MySQL 5.5 之前版本默認存儲引擎,在排序、分組等操作中,當數量超過一定大小之后,由查詢優化器建立的臨時表。 MyISAM 存儲引擎表由 MYD (表數據) 、MYI (表索引) 與 frm (表結構) 組成。 #### MyISAM 特性 * 并發性與鎖級別 表級鎖 * 表損壞修復 ``` check table tableName repair table tabelName ``` * MyISAM 表支持的索引類型 fulltext * MyISAM表支持數據壓縮 ``` myisampack ``` > 壓縮后的表無法進行寫操作,只能進行讀操作。 ##### MyISAM限制 在 MySQL 版本小于 5.0 時,默認表大小為 4G,如存儲大表則要修改表的 `MAX_Rows` 和 `AVG_ROW_LENGTH` 參數。 在MySQL版本大于5.0時,默認支持為 256TB。 ##### MyISAM 適用場景 非事務型應用 只讀類應用 空間類的應用 ### MySQL常用存儲引擎之InnoDB MySQL5.5 及之后版本默認存儲引擎。 InnoDB 使用表空間進行數據存儲 * 如果數據庫的配置參數 `innodb_file_pre_table => on`,那么創建后的 InnoDB 引擎的表將產生 `tableName.frm` 和 `tableName.ibd` 文件。 * 如果數據庫的配置參數 `innodb_file_pre_table => off`,那么創建后的 InnoDB 引擎的表將產生 `ibdata*`(共享表空間) 和 `tableName.frm` 那么,系統表空間和獨立表空間要如何選擇呢? - `innodb_file_pre_table => off` 建立的表情況下,**系統表空間**無法簡單的收縮系統文件大小,造成大量的空間浪費,并且會產生大量的磁盤碎片,從而降低系統的性能。 - **獨立表空間**可以通過 `optimize table` 命令收縮系統文件。 - **系統表空間**會產生IO瓶頸 - **獨立表空間**可以同時向多個文件刷新數據 > 建議對 InnoDB 使用獨立表空間,即 `innodb_file_pre_table => on` #### InnoDB 特性 * InnoDB 是一種事務性存儲引擎 * 完全支持事務的 ACID 特性 * InnoDB 支持行級鎖 行級鎖可以最大程度的支持并發 行級鎖是有存儲引擎層實現 * 鎖的類型: - 共享鎖(也稱讀鎖) - 獨占鎖(也稱寫鎖) * InnoDB 狀態檢查 ``` show engine innodb status ``` * 適用場景 InnoDB適用于大多數 OLTP 應用 ### MySQL常用存儲引擎之CSV #### 文件系統存儲特點 數據以文本方式存儲在文件中,他們分別包含有如下文件: `.csv` 文件存儲表內容 `.csm` 文件存儲標的元數據如表狀態和數據量 `.frm` 文件存儲表結構信息 ##### CSV文件存儲的特點 * 以 csv 格式進行數據存儲 * 所有列必須都是不能為 null 的數據 * 不支持索引 * 可以對數據文件直接編輯 ##### 適用場景 適合作為數據交換的中間表 ### MySQL常用存儲引擎之Archive 以 zlib 對表數據進行壓縮,磁盤 I/O更少 數據存儲在 `tableName.ARZ` 為后綴的文件中 #### Archive 文件存儲特點 只支持 `insert` 和 `select` 操作 只允許在自增 ID 列上加索引 #### 使用場景 日志和數據采集類應用 ### MySQL常用存儲引擎之Memory #### 文件系統存儲特點 也稱 heap 存儲引擎,所以數據保存在內存中。 #### 功能特點 * 支持 hash 索引(等值查找快)和 Btree 索引(范圍查找快) * 所有字段都為固定長度,例如:`varchar(10) = char(10)` * 不支持 `BLOB/TEXT` 等大字段 * `Memory` 存儲引擎使用表級鎖 * 最大大小由 `max_heap_table_size` 參數決定 #### 使用場景 * 用于查找或者是映射表,例如:郵編和地區的對應表 * 用于保存數據分析中產生的中間表 * 用于緩存周期性聚合數據的結果表 > Memory 數據易丟失,所以要求數據可再生。 ### MySQL常用存儲引擎之Federated 默認禁止,啟用需要在啟動時增加 federated 參數。 ``` mysql://user_name[:password]@host_name[:port_num]/db_name/tbl_name ``` #### 功能特點 * 提供了訪問遠程MySQL服務器上表的方法 * 本地不存儲數據,數據全部放到遠程服務器上 * 本地需要保存表結構和遠程服務器的連接信息
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看