MyISAM特色:
緩存
B-tree
併發
全文檢索索引oracle
索引緩存ide
數據壓縮工具
複製性能
查詢緩存加密
三維地理數據類型spa
地理數據索引索引
數據加密requests
統計信息
備份、基於時間點的恢復
MyISAM的三種存儲格式
1,FIXED 也稱爲靜態格式存儲:保存的每一列的數據佔用長度都固定。查詢速度最快
2,DYNAMIC 也稱爲動態格式存儲:可變長數據列會根據保存數據實際長度來存儲數據。節省空間,性能相對會差一些
3,COMPRESSED也稱爲壓縮格式存儲:用myisampack命令來建立,myisamchk命令來解壓縮。只讀。節省空間,以及讀取速度很是快。
MyISAM工具
1,myisamchk -ei 相似oracle/db2的runstats
2,myisamchk -ed 相似oracle/db2的reorgchk
3,myisamchk -r 相似oracle/db2的相似reorg
MyISAM使用場景
1,設置合適的索引
2,因爲MyISAM是使用的表級鎖,因此在寫入的時候須要調整寫入順序,儘可能作到分清楚重要次要的秩序。
3,儘可能減小插入語句執行的次數,能合併執行的合併執行。
4,對於查詢語句,儘可能分開查詢,串行方式運行。減小併發數。
5,MyISAM會緩存整個表的行數,因此對於全表count很快。可是條件語句count會走全表掃描,會很慢,儘可能避免。
MyISAM key相關變量
1,key_buffer_size ,key_buffer_size是索引塊緩衝區的大小。共享緩存。
2,key_cache_age_threshold ,控制緩存KEY所在buffer中熱區的閾值。閾值越高保持的時間越長
3,key_cache_block_size ,鍵值緩存內塊的字節大小
4,key_cache_division_limit ,key緩存中非熱區百分比
myisam key相關狀態變量1,Key_blocks_not_flushed ,key內數據已經更改,但還沒寫入磁盤的次數2,Key_blocks_unused ,未使用的key塊數量3,Key_blocks_used ,使用的key塊數量4,Key_read_requests ,key數據塊的請求數5,Key_reads ,實際從硬盤讀取key數據塊並寫入緩存的次數6,Key_write_requests ,key數據塊寫入硬盤的請求數7,Key_writes ,實際向硬盤寫入key數據塊的IO次數