Domanda

Alcuni mesi fa ho aggiornato una configurazione MySQL da 5,5 a 5.6. Da allora ho avuto problemi con uno script che uso per scaricare i vari database in modo da poterli sostenere.

Lo script è un breve pezzo di perl che ottiene un elenco di tutti i database e quindi chiama mysqldump Per ciascuno come segue:

mysqldump -udb_account -pdb_pw -hserver.com --single-transaction --flush-logs 
   --routines --triggers --quick $fn 2> $fn.err | gzip > $fn.mysql.gz

Problema: molti di questi database hanno centinaia di tabelle (sempre in aumento). Per questi db più grandi il mysqldump Il comando si esce spesso dopo una sola tabella. Se eseguo il comando da una sessione di terminale, esegue correttamente. (in genere funziona come un lavoro cron 1x/wk)

Il .err Il file non contiene messaggi. Nemmeno il server.err File nella Dir radice MySQL.

Nota: questo script ha funzionato bene su MySQL 5.5 per diversi anni. Questo problema è iniziato quando ho aggiornato a 5.6.

Anche il --flush-logs La porzione non funziona. La cartella mysql_bin non è mai stata svuotata da quando questo sistema è stato portato online.

Una variabile per cui non ho ancora controllato: quando eseguita come lavoro cron, lo script fork 3 processi alla volta. Quando provo il comando in una sessione a termine, sto facendo solo uno alla volta.

Sistema in questione:

  • CentOS 6.4
  • x64
  • 64 GB di RAM

Nessuna soluzione corretta

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a dba.stackexchange
scroll top