[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