[plug] are these mysql binary logs?

Simon Marko s.marko at bigpond.com
Tue Jun 13 10:03:14 WST 2006


William Kenworthy wrote:
> With mysql (4.0), I have a few hundred, sometimes huge files of the form
> hostname-bin.6_digit_number in /var/lib/mysql.  I presume they are
> binary log files?
>
> I dont care if they are deleted (DB recovery is not needed), but is
> there a safe way to remove them if they arent log files?  If they are
> its rm -rf time and turn logging off!
>
> BillK
>
>   
Hi Bill - This is from the MySQL reference manual for version 5.1 but 
should work in 4.X as well
HTH ::SimonM::


      13.6.1. SQL Statements for Controlling Master Servers

Replication can be controlled through the SQL interface. This section 
discusses statements for managing master replication servers. Section 
13.6.2, “SQL Statements for Controlling Slave Servers” 
<ch13s06.html#replication-slave-sql>, discusses statements for managing 
slave servers.


        13.6.1.1. |PURGE MASTER LOGS| Syntax


PURGE {MASTER | BINARY} LOGS TO '/|log_name|/'
PURGE {MASTER | BINARY} LOGS BEFORE '/|date|/'

Deletes all the binary logs listed in the log index prior to the 
specified log or date. The logs also are removed from the list recorded 
in the log index file, so that the given log becomes the first.

Example:

PURGE MASTER LOGS TO 'mysql-bin.010';
PURGE MASTER LOGS BEFORE '2003-04-02 22:46:26';

The |BEFORE| variant's /|date|/ argument can be in |'YYYY-MM-DD 
hh:mm:ss'| format. |MASTER| and |BINARY| are synonyms.

This statement is safe to run while slaves are replicating. You do not 
need to stop them. If you have an active slave that currently is reading 
one of the logs you are trying to delete, this statement does nothing 
and fails with an error. However, if a slave is dormant and you happen 
to purge one of the logs it has yet to read, the slave will be unable to 
replicate after it comes up.

To safely purge logs, follow this procedure:

   1.

      On each slave server, use |SHOW SLAVE STATUS| to check which log
      it is reading.

   2.

      Obtain a listing of the logs on the master server with |SHOW
      MASTER LOGS|.

   3.

      Determine the earliest log among all the slaves. This is the
      target log. If all the slaves are up to date, this is the last log
      on the list.

   4.

      Make a backup of all the logs you are about to delete. (This step
      is optional, but always advisable.)

   5.

      Purge all logs up to but not including the target log.






More information about the plug mailing list