国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數(shù)據(jù)庫 > MySQL > 正文

簡介操作MySQL日志的一些方法

2024-07-24 13:07:35
字體:
供稿:網(wǎng)友

這篇文章主要介紹了操作MySQL日志的一些方法,對日志的刪除操作做了重點講解,需要的朋友可以參考下

我們可以在mysql的安裝目錄下看到mysql的二進(jìn)制日志文件,如mysql-bin.000***等,很多人都不及時的處理,導(dǎo)致整個硬盤被塞滿也是有可能的。這些是數(shù)據(jù)庫的操作日志。它記錄了我們平時使用的sql語句命令,即使這個sql語句沒有被執(zhí)行,也會被記錄,它包括執(zhí)行時間之類的都詳細(xì)在案,其實 它的目的有兩個:一是方便我們查錯和恢復(fù)數(shù)據(jù)庫;二是為了主從服務(wù)器之間同步數(shù)據(jù)用的,主從服務(wù)器上所有操作都記錄在日志里,從服務(wù)器可以根據(jù)這些日志來進(jìn)行相同的操作,確保主從兩個同步。

查看mysql日志的命令:

 

 
  1. #mysql -u user -p //user代表你的mysql用戶名 
  2.  
  3. Enter password: (輸入密碼) //輸入密碼后就進(jìn)入mysql的控制臺 
  4.  
  5. mysql> show master logs; //顯示mysql日志文件 
  6. +------------------+-----------+ 
  7. | Log_name | File_size | 
  8. +------------------+-----------+ 
  9. | mysql-bin.000010 | 63328652 | 
  10. +------------------+-----------+ 
  11. 1 row in set (0.06 sec) 

也可以在mysql的命令模式下,輸入以下命令:

 

 
  1. mysql> show binary logs; //查看二進(jìn)制日志文件列表和大小 
  2. +------------------+-----------+ 
  3. | Log_name | File_size | 
  4. +------------------+-----------+ 
  5. | mysql-bin.000010 | 63355376 | 
  6. +------------------+-----------+ 
  7. 1 row in set (0.00 sec) 

MASTER和BINARY是同義詞。

刪除mysql 二進(jìn)制日志:

第一種方法是針對單獨(dú)的mysql服務(wù)器,不適合主從同步的。切記!當(dāng)然,如果你確保自己的主從同步已經(jīng)完成了,那么也可以使用這個命令,但是我還是不怎么建議的。

第一種方法:

mysql>reset master; //清空所有mysql所有的二進(jìn)制日志文件

主從同步,建議用以下兩種方法:

首先,我們要知道從mysql服務(wù)器是否在讀取日志,或者在讀取哪個日志。

在從屬服務(wù)器上輸入一下命令:

 

 
  1. mysql>show slave hosts //查看所有連接到master的slave的信息 
  2.  
  3. mysql>show slave status; //檢查從服務(wù)器在讀取哪個日志 

下面第二種和第三種方法中,當(dāng)從服務(wù)器正在讀取你正在刪除的日志時候,就會失效,并且會有報錯。如果從屬服務(wù)器沒有讀取日志,而你又刪了它啟動后要讀取的日志,那么當(dāng)它啟動后就不會復(fù)制。所以,下面兩種方法可以安全刪除日志文件。

主從服務(wù)器清理日志操作步驟如下:

在每個從屬服務(wù)器上,使用SHOW SLAVE STATUS來檢查它正在讀取哪個日志。

使用SHOW MASTER LOGS獲得主服務(wù)器上的一系列日志。

在所有的從屬服務(wù)器中判定最早的日志,這個是目標(biāo)日志,如果所有的從屬服務(wù)器是更新的,就是清單上的最后一個日志。

清理所有的日志,但是不包括目標(biāo)日志,因為從服務(wù)器還要跟它同步。

注意:最好做好你要刪除的所有日志的備份,有備份,就不怕出錯

第二種刪除二進(jìn)制日志的方法:

 

  1. PURGE {MASTER | BINARY} LOGS TO 'log_name' 


例子:

  1. mysql>purge master logs to 'mysql-bin.000800'//清楚mysql-bin.000800之前的二進(jìn)制日志 


第三種刪除二進(jìn)制日志的方法:

  1. PURGE {MASTER | BINARY} LOGS BEFORE 'date' 


例子:

 

  1. mysql>purge master logs before '2012-12-22 12:12:12'//刪除2012-12-22 12:12:12這時間之前的二進(jìn)制文件 


第四種方法:

就是修改my.cnf文件,在中[mysqld]中添加:

 

 
  1. expire_logs_day=5 //設(shè)置日志的過期天數(shù),過了指定的天數(shù),會自動刪除 

第五種方法:

禁止mysql的日志記錄功能(單服務(wù)器)

修改my.cnf,注釋掉下面兩行:

 

 
  1. #log-bin=mysql-bin 
  2. #binlog_format=mixed 

然后重啟mysql

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 汉阴县| 盈江县| 长治市| 朔州市| 安乡县| 虹口区| 新宾| 加查县| 襄樊市| 仁化县| 平凉市| 门源| 九江市| 卢氏县| 合作市| 郴州市| 明光市| 花莲县| 南郑县| 赫章县| 巩义市| 收藏| 江永县| 南华县| 信宜市| 额敏县| 丹寨县| 黔西县| 桑日县| 惠来县| 昆明市| 桂林市| 浙江省| 深泽县| 山西省| 龙陵县| 萍乡市| 桐庐县| 津市市| 长武县| 大化|