Snort mailing list archives
Keeping a 2 week running backup of MySQL snortdb
From: "JC" <monroe () peoplego com>
Date: Tue, 30 Apr 2002 19:49:43 -0700
-----BEGIN PGP SIGNED MESSAGE----- I'm going to be working on a automated version of this process but in order to to do the 2-x week backup process you must complete the following 1) select cid from event where timestamp >= "200x-xx-xx" limit 1; # since it starts counting at midnight if you do just "2002-xx-xx" it will try to match "2002-xx-xx 00:00:00" and you quite possible will not have records at that time. 2) select cid from event where timestamp >= "2002-xx-xx" and timestamp < "2002-xx-xx" order by timestamp desc limit 1; #this is to find the last cid in that date range and again since it starts counting at midnight if you order descending it will give you the last cid before the next day 3) create table data_copy select * from data where cid >= <beginning_cid> and cid <= <ending_cid>; #you would then need to do the same operations for tables event,icmphdr,iphdr,opt,tcphdr,udphdr 4) backup table data_copy,event_copy,icmphdr_copy,iphdr_copy,opt_copy,tcphdr_copy,udph dr_copy to '/data/directory/that/the/mysql/user/that/you/start/mysql/under/can/wr ite/to'; 5) create database old_snort1; 6) restore table data_copy,event_copy,icmphdr_copy,iphdr_copy,opt_copy,tcphdr_copy,udph dr_copy from '/the/data/directory/that/you/wrote/to'; 7) create table data select * from data_copy # then do this on all of the copy tables #of course you could do rename them from perl or something else 8) then you can use your custom query engine to query from the 2 week old running copy 9) you could then use myisampack to pack each of these MYD files since you aren't going to be writing to these tables any more this will give you about a 50% space savings. 10) you then might want to make sure that the data has copied correctly through a select that writes to a file that would query both the running backup and the live database then diff those file(s) 11) drop table data_copy,event_copy,icmphdr_copy,iphdr_copy,opt_copy,tcphdr_copy,udph dr_copy; 12) delete from data,event,icmphdr,iphdr,opt,tcphdr,udphdr where cid
= <beginning_cid> and cid < <ending_cid>
If someone can show me how to do this in 1 line using mysqldump I'll be a monkey's uncle Thanks, JC -----BEGIN PGP SIGNATURE----- Version: PGPfreeware 6.5.8 for non-commercial use <http://www.pgp.com> iQEVAwUBPM9XjZPmnNGPaJbxAQE/SAf/a4mjeBCwp0nCWNsy893JdcM8oPmYOdFN R4HS3s6BTaYFYcUQXiB4PZktw0ZSxiSIpjQ9JiqmlIfR7q1V6TR1w3717/RVhUdA qIkNt8EguTlw2hT2GeCS0wHeq1tOscrJaEfszXvld0SmcGgMPBMZ/lYpx+eXKH4u ZDqeZ01BzbH7iIN9eSP2k40E+LrjN3RFDEhL/ggnFfergQcFhyVd6iikDrlgHmhV qONDQG1U0Wsy0/x8n7Tp78gN2K+TEdhBoKUB0PTHK15bXhXzrQdf+eAX4zWfQlLG rZJXy4vP7euIG8jCN94QnBj0IlT4GITMS82y067Euq6QCb+OkDEIGA== =Stf1 -----END PGP SIGNATURE-----
Current thread:
- Keeping a 2 week running backup of MySQL snortdb JC (May 01)