簡介操作MySQL日記的一些辦法。本站提示廣大學習愛好者:(簡介操作MySQL日記的一些辦法)文章只能為提供參考,不一定能成為您想要的結果。以下是簡介操作MySQL日記的一些辦法正文
我們可以在mysql的裝置目次下看到mysql的二進制日記文件,如mysql-bin.000***等,許多人都不實時的處置,招致全部硬盤被塞滿也是有能夠的。這些是數據庫的操作日記。它記載了我們日常平凡應用的sql語句敕令,即便這個sql語句沒有被履行,也會被記載,它包含履行時光之類的都具體在案,其實 它的目標有兩個:一是便利我們查錯和恢單數據庫;二是為了主從辦事器之間同步數據用的,主從辦事器上一切操作都記載在日記裡,從辦事器可以依據這些日記來停止雷同的操作,確保主從兩個同步。
檢查mysql日記的敕令:
#mysql -u user -p //user代表你的mysql用戶名 Enter password: (輸出暗碼) //輸出暗碼後就進入mysql的掌握台 mysql> show master logs; //顯示mysql日記文件 +------------------+-----------+ | Log_name | File_size | +------------------+-----------+ | mysql-bin.000010 | 63328652 | +------------------+-----------+ 1 row in set (0.06 sec)
也能夠在mysql的敕令形式下,輸出以下敕令:
mysql> show binary logs; //檢查二進制日記文件列表和年夜小 +------------------+-----------+ | Log_name | File_size | +------------------+-----------+ | mysql-bin.000010 | 63355376 | +------------------+-----------+ 1 row in set (0.00 sec)
MASTER和BINARY是同義詞。
刪除mysql 二進制日記:
第一種辦法是針對零丁的mysql辦事器,不合適主從同步的。切記!固然,假如你確保本身的主從同步曾經完成了,那末也能夠應用這個敕令,然則我照樣不怎樣建議的。
第一種辦法:mysql>reset master; //清空一切mysql一切的二進制日記文件
主從同步,建議用以下兩種辦法:
起首,我們要曉得從mysql辦事器能否在讀取日記,或許在讀取哪一個日記。
在附屬辦事器上輸出一下敕令:
mysql>show slave hosts //檢查一切銜接到master的slave的信息 mysql>show slave status; //檢討從辦事器在讀取哪一個日記
上面第二種和第三種辦法中,當從辦事器正在讀取你正在刪除的日記時刻,就會掉效,而且會有報錯。假如附屬辦事器沒有讀取日記,而你又刪了它啟動後要讀取的日記,那末當它啟動後就不會復制。所以,上面兩種辦法可以平安刪除日記文件。
主從辦事器清算日記操作步調以下:
留意:最好做好你要刪除的一切日記的備份,有備份,就不怕失足
第二種刪除二進制日記的辦法:
PURGE {MASTER | BINARY} LOGS TO 'log_name'
例子:
mysql>purge master logs to 'mysql-bin.000800'; //清晰mysql-bin.000800之前的二進制日記
第三種刪除二進制日記的辦法:
PURGE {MASTER | BINARY} LOGS BEFORE 'date'
例子:
mysql>purge master logs before '2012-12-22 12:12:12'; //刪除2012-12-22 12:12:12這時候間之前的二進制文件
第四種辦法:就是修正my.cnf文件,在中[mysqld]中添加:
expire_logs_day=5 //設置日記的過時天數,過了指定的天數,會主動刪除
第五種辦法:制止mysql的日記記載功效(單辦事器)
修正my.cnf,正文失落上面兩行:
#log-bin=mysql-bin #binlog_format=mixed
然後重啟mysql