MySQL 設定檔及邏輯架構

來源:互聯網
上載者:User

標籤:tcp/ip   tmp   useful   產生   啟動   key   自己   系統資源   資料檔案   

設定檔:

  1. linux:/etc/my.cnf              預設設定檔:/usr/share/mysql/my-default.cnf
  2. windows:my.ini

 

主要記錄檔:

  1. 二進位日誌log-bin:主從複製。
  2. 錯誤記錄檔log-error:預設是關閉的,  記錄嚴重的警告和錯誤資訊, 每次啟動和關閉的詳細資料等。
  3. 查詢日誌log:預設是關閉的, 記錄查詢的sql語句, 如果開啟會減低mysql的整體效能, 因為記錄日誌也是需要消耗系統資源的。

 

資料檔案:

  1. frm檔案:存放表結構。
  2. myd檔案:存放表資料。
  3. myi:存放表索引。

 

MySQL邏輯架構:

 

  1. 串連層:最上層是一些用戶端和串連服務, 包含本地sock通訊和大多數基於用戶端/服務端工具實現的類似TCP/IP的通訊。主要完成一些類似於串連處理、授權認證及相關的安全方案。在該層上引入了線程池的概念, 為通過認證安全介入的用戶端提供線程。同樣在該層上可以實現基於SSL的安全連線。伺服器也會為安全接入的每個用戶端驗證它所具有的操作許可權。
  2. 服務層:第二層架構主要完成多少的核心服務功能, 如SQL介面, 並完成緩衝的查詢, SQL的分析和最佳化及部分內建函數的執行。所有跨儲存引擎的功能也在這一層實現, 如過程、函數等。在該層, 伺服器會解析查詢並建立相應的內部解析樹, 並對其完成相應的最佳化, 如確定查詢表的順序、是否利用索引等, 最後產生相應的執行操作。如果是select語句, 伺服器還會查詢內部的緩衝。如果緩衝空間足夠大, 這樣在解決大量讀操作的環境中能夠很好的提升系統的效能。
  3. 引擎層:儲存引擎層, 儲存引擎真正負責了MySQL中資料的儲存和提取, 伺服器通過API與儲存引擎來進行通訊。不同的儲存引擎具有的功能不同,這樣我們可以根據自己的實際需要進行選取。如MyISAM、InnoDB、NDB等。
  4. 儲存層:資料存放區層, 主要是將資料存放區在運行於裸裝置的檔案系統之上, 並完成與儲存引擎的互動。

 

查看MySQL提供的儲存引擎:

 1 mysql> show engines; 2 +--------------------+---------+----------------------------------------------------------------+--------------+------+------------+ 3 | Engine             | Support | Comment                                                        | Transactions | XA   | Savepoints | 4 +--------------------+---------+----------------------------------------------------------------+--------------+------+------------+ 5 | CSV                | YES     | CSV storage engine                                             | NO           | NO   | NO         | 6 | MRG_MYISAM         | YES     | Collection of identical MyISAM tables                          | NO           | NO   | NO         | 7 | PERFORMANCE_SCHEMA | YES     | Performance Schema                                             | NO           | NO   | NO         | 8 | BLACKHOLE          | YES     | /dev/null storage engine (anything you write to it disappears) | NO           | NO   | NO         | 9 | MEMORY             | YES     | Hash based, stored in memory, useful for temporary tables      | NO           | NO   | NO         |10 | MyISAM             | YES     | MyISAM storage engine                                          | NO           | NO   | NO         |11 | ARCHIVE            | YES     | Archive storage engine                                         | NO           | NO   | NO         |12 | InnoDB             | DEFAULT | Supports transactions, row-level locking, and foreign keys     | YES          | YES  | YES        |13 | FEDERATED          | NO      | Federated MySQL storage engine                                 | NULL         | NULL | NULL       |14 +--------------------+---------+----------------------------------------------------------------+--------------+------+------------+15 9 rows in set (0.01 sec)

或者:

mysql> show variables like ‘%storage_engine%‘;+----------------------------+--------+| Variable_name              | Value  |+----------------------------+--------+| default_storage_engine     | InnoDB || default_tmp_storage_engine | InnoDB || storage_engine             | InnoDB |+----------------------------+--------+3 rows in set (0.00 sec)

 

MySQL 設定檔及邏輯架構

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.