002 mysql物理結構

2021-10-05 17:43:09 字數 2079 閱讀 1490

step1 mysql物理結構

step2 日誌檔案

檢視日誌開啟情況  

mysql> show variables like 'log_%';
1.errorlog 錯誤日誌

錯誤日誌記錄了執行過程中遇到的所有嚴重的錯誤資訊,以及 mysql每次啟動和關閉的詳細資訊,預設是開啟的,而且從5.5.7以後無法關閉錯誤日誌。

2.bin log 二進位制日誌

記錄資料變化,binlog記錄了資料庫所有的ddl語句和dml語句,但不包括select語句內容,語句以事件的形式儲存,描述了資料的變更順序,binlog還包括了每個更新語句的執行時間資訊;如果是ddl語句,則直接記錄到binlog日誌,而dml語句,必須通過事務提交才能記錄到binlog日誌中。

配置my.cnf開啟:mysql-bin是日誌的字首

#bin-log

log-bin=mysql-bin

配置完成後重啟mysql就會出現mysql-bin.000001檔案,每次重啟mysql都會出現乙個mysql-bin.******的檔案;

注:生產環境中非常有必要開啟,資料備份、恢復、主從都應用;

3.general query log 通用查詢日誌

全面記錄crud日誌,非常耗費效能,所以生產環境不開啟;

#general query log

#general_log=on

#general_log_file=/var/lib/mysql/gen-log.log

4.slow query log 慢查詢日誌(重要)

針對sql調優的日誌,記錄並定位消耗資源高的select(執行慢);預設是關閉狀態,需要通過設定my.cnf進行開啟;

#開啟慢查詢日誌

slow_query_log=on

#慢查詢的閾值(單位為秒)

long_query_time=3

#日誌記錄檔案如果沒有給出file_name值, 預設為主機名,字尾為-slow.log。如果給出了檔名,但不

是絕對路徑名,檔案則寫入資料目錄。

slow_query_log_file=file_name

記錄執行時間超過long_query_time秒的所有查詢,便於收集查詢時間比較長的sql語句。

5.redo log 重做日誌

mysql自己生成,ib_logfile0及ib_logfile1;

6.undo log 回滾日誌

mysql自己生成,ibdata1中(資料共享區);

7.relay log 中繼日誌

配置主從過程中,從庫生成的日誌;

step3 資料檔案

檢視資料檔案

mysql> show variables like '%datadir%';
1.innodb資料檔案

.ibd:使用獨享表空間儲存表資料和索引資訊,一張表對應乙個ibd檔案;

ibdata檔案:使用共享表空間儲存表資料和索引資訊,所有表共同使用乙個或者多個ibdata檔案。

2.myisam資料檔案

很少使用,如果需要應用myisam引擎可以用redis替代;

.myd檔案:主要用來儲存表資料資訊

.myi檔案:主要用來儲存表資料檔案中任何索引的資料樹

002 MySQL開啟遠端連線

預設mysql的使用者是沒有遠端訪問的許可權的。主流的有兩種方法 改表法 授權法 1.登入mysql mysql u root p2.修改mysql庫的user表,將host項改為 這裡表示的是允許任意host訪問 如果只允許某乙個ip訪問,那麼改為相應的ip,比如改為192.168.10.13,表...

002 MySQL程式 工具概述

十年運維系列之基礎篇 mysql 聯絡 1494445739 qq.com www.jplatformx.com 一 引言 要特別注意mysql和mysqld的區別。mysql是mysqld資料庫伺服器程序的客戶端連線程式,而mysqld指的是資料庫伺服器。可以跟我們日常開發的web系統來做乙個模擬...

mysql 物理結構 mysql物理結構

mysql是通過檔案系統對資料和索引進行儲存的。mysql從物理結構上可以分為日誌檔案和資料索引檔案。mysql在linux中的資料索引檔案和日誌檔案都在 var lib mysql目錄下。日誌檔案採用順序io方式儲存 資料檔案採用隨機io方式儲存。首先可以檢視mysql的檔案在linux中的那個目...