MySQL 知識點

來源:互聯網
上載者:User

標籤:

檔案格式:

frm、MYI、MYD   分別是   MyISAM   表的表結構\索引\資料檔案  
   
  一個庫在一個目錄下  
  不過在   MySQL   4.0   以上版本中,  
  你可以在   CREATE   TABLE   語句中通過使用   DATA   DIRECTORY="directory"   或   INDEX   DIRECTORY="directory",你可以指定儲存引擎在什麼地方存放它的表和索引檔案。注意,目錄必須以一個完整路徑指定(不是相對路徑)。   這僅僅工作於   MySQL   4.0   中的   MyISAM   表,並且你沒有使用   --skip-symlink   選項。查看章節   5.6.1.2   對錶使用符號連結。      
    
    
  記錄檔可以是一個檔案,  
   
  也可以是多個檔案,在每次系統啟動時產生一個,副檔名是   .000   ,依次遞增  
   
  使用一個檔案,還是多個記錄檔,在系統設定檔   my.cnf   或   my.ini   中的配置項確定

 

日誌:

登入mysql終端
記錄檔路徑
mysql> show variables like ‘general_log_file‘;
+------------------+------------------------------------+
| Variable_name | Value |
+------------------+------------------------------------+
| general_log_file | /usr/local/mysql/data/localhost.log |
+------------------+------------------------------------+
1 row in set (0.00 sec)
錯誤記錄檔檔案路徑
mysql> show variables like ‘log_error‘;
+---------------+------------------------------------+
| Variable_name | Value |
+---------------+------------------------------------+
| log_error | /usr/local/mysql/data/localhost.err |
+---------------+------------------------------------+
1 row in set (0.00 sec)
慢查詢記錄檔路徑
mysql> show variables like ‘slow_query_log_file‘;
+---------------------+-----------------------------------------+
| Variable_name | Value |
+---------------------+-----------------------------------------+
| slow_query_log_file | /usr/local/mysql/data/localhost-slow.log |
+---------------------+-----------------------------------------+
1 row in set (0.01 sec)

mysql有以下幾種日誌:  
   錯誤記錄檔:     -log-err  
   查詢日誌:     -log  
   慢查詢日誌:   -log-slow-queries  
   更新日誌:     -log-update  
   二進位日誌: -log-bin  


是否啟用了日誌 
mysql>show variables like ‘log_%‘; 

怎樣知道當前的日誌 
mysql> show master status; 

顯示二進制日誌數目 
mysql> show master logs; 

看二進位記錄檔用mysqlbinlog 
shell>mysqlbinlog mail-bin.000001 
或者shell>mysqlbinlog mail-bin.000001 | tail 

mysqlbinlog localhost-bin.000202 > new_file_name.log命令,將目標檔案儲存為記錄檔,可指定儲存路徑下 有個小技巧跟大家介紹下,我在準備轉換的時候發現記錄檔有2G多,尋思著為什麼mysql為什麼不把日誌按日誌週期性分多個檔案放呢。結果發現mysql有個更好的方法,可以通過時間參數擷取某個時間段的資料,例子如下:mysqlbinlog   --start-datetime="2010-11-20 00:00:00"  --stop-datetime="2010-11-21 00:00:00" 


在設定檔中指定log的輸出位置. 
Windows:Windows 的設定檔為 my.ini,一般在 MySQL 的安裝目錄下或者 c:\Windows 下。 
Linux:Linux 的設定檔為 my.cnf ,一般在 /etc 下。 

在linux下: 

Sql代碼  
  1. # 在[mysqld] 中輸入  
  2. #log  
  3. log-error=/usr/local/mysql/log/error.log  
  4. log=/usr/local/mysql/log/mysql.log  
  5. long_query_time=2  
  6. log-slow-queries= /usr/local/mysql/log/slowquery.log  



windows下: 

Sql代碼  
  1. # 在[mysqld] 中輸入  
  2. #log  
  3. log-error="E:/PROGRA~1/EASYPH~1.0B1/mysql/logs/error.log"  
  4. log="E:/PROGRA~1/EASYPH~1.0B1/mysql/logs/mysql.log"  
  5. long_query_time=2  
  6. log-slow-queries= "E:/PROGRA~1/EASYPH~1.0B1/mysql/logs/slowquery.log"  



開啟慢查詢 
long_query_time =2  --是指執行超過多久的sql會被log下來,這裡是2秒 
log-slow-queries= /usr/local/mysql/log/slowquery.log  --將查詢返回較慢的語句進行記錄 

log-queries-not-using-indexes = nouseindex.log  --就是字面意思,log下來沒有使用索引的query 

log=mylog.log  --對所有執行語句進行記錄

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.