volevo schedulare questo comando per ottimizzare i database del mio
serverino:
mysqlcheck -u root -p --auto-repair --check --optimize --all-databases
e volevo chiedervi se � meglio fermare il server web quando si lancia questo
comando o se si pu� lasciare tutto online senza problemi.
Grazie :-)
--
Claretta
> volevo schedulare questo comando per ottimizzare i database del mio
> serverino:
>
> mysqlcheck -u root -p --auto-repair --check --optimize --all-databases
Se usi InnoDB non serve a molto, fa giusto ricalcolare qualche indice se
necessario.
--
Vide
Dipende da cosa temi: se è per questioni di prestazioni (server sotto
stress eccessivo) o per esaurimento della memoria (e possibile innesco
dell'OOM), allora potresti. Ma se temi invece che il web server e mysqld
si possano pestare i piedi a vicenza :-) puoi stare tranquilla. A
differenza di myisamchk, che pure fa più o meno la stessa cosa, mysqlcheck
è stato sviluppato apposta per poter lavorare con mysql attivo e, mentre
lavora, esegue un lock sulle tabelle che ha aperto. Dalla pagina di manuale:
Each table is locked and therefore unavailable to other
sessions while it is being processed.
Tuttavia, visto che usi anche lo switch --auto-repair, vale la pena
tenere in mente quanto è scritto nella pagina di manuale:
Caution
It is best to make a backup of a table before performing a table
repair operation; under some circumstances the operation might
cause data loss. Possible causes include but are not limited to
file system errors.
Ciao,
--
Alessandro Selli http://alessandro.route-add.net
AVVERTENZA: i messaggi inviati a "trappola" non mi arriveranno.
WARNING: messages sent to "trappola" will never reach me.
Chiave PGP/GPG: EC885A8B
Claretta ha scritto:
>> mysqlcheck -u root -p --auto-repair --check --optimize --all-databases
>> e volevo chiedervi se � meglio fermare il server web quando si lancia=
>> questo comando o se si pu� lasciare tutto online senza problemi.
>Dipende da cosa temi: se =E8 per questioni di prestazioni (server
>sottostress eccessivo) o per esaurimento della memoria (e possibile innesco
>dell'OOM), allora potresti. Ma se temi invece che i>l web server e
>mysqldsi possano pestare i piedi a vicenza :-) puoi stare tranquilla. A
>differenza di myisamchk, che pure fa pi=F9 o meno la stessa cosa,
>mysqlcheck =E8 stato sviluppato >apposta per poter lavorare con mysql
>attivo e, mentre lavora, esegue un lock sulle tabelle che ha aperto. Dalla
>pagina di manuale:
>
> Each table is locked and therefore unavailable to other sessions while it
> is being processed.
>
> Tuttavia, visto che usi anche lo switch --auto-repair, vale la pena
tenere in mente quanto � scritto nella pagina di manuale:
>
> Caution
> It is best to make a backup of a table before performing a table
> repair operation; under some circumstances the operation might
> cause data loss. Possible causes include but are not limited to
> file system errors.
>
> Ciao,
Grazie :-)
meglio allora solo:
mysqlcheck -u root -p --check --optimize --all-databases
per lo stress lo farei alle 6 del mattino, il severino a quell'ora quasi
dorme :-)
non di notte perch� fa altre cose (non va in discoteca, lavora lui!).
e se facessi:
nice -n20 mysqlcheck -u root -p --check --optimize --all-databases
d� meno stress?
Grazie :-)
--
Claretta
[...]
> (non va in discoteca, lavora lui!).
Dovo aver tolto il mestiere a tanti esseri umani, i computer finalmente
si ribelleranno e formeranno i loro sindacati!
> e se facessi:
>
> nice -n20 mysqlcheck -u root -p --check --optimize --all-databases
>
> dà meno stress?
Meno stress ai processi concorrenti (allo scheduler), si, ma non alla
RAM e ai dischi.
Per i secondi potresti aggiungere ionice -c 3, ma se sei sicura che il
comando sarà eseguito quando i serverino quasi dorme, puoi evitare tutte e
due i *nice. Dipende poi da quanto è grande la base di dati, ovviamente.
> Ciao,
>
> volevo schedulare questo comando per ottimizzare i database del mio
> serverino:
>
> mysqlcheck -u root -p --auto-repair --check --optimize --all-databases
>
> e volevo chiedervi se è meglio fermare il server web quando si lancia
> questo comando o se si può lasciare tutto online senza problemi.
e quanto pesa il database?
circa 150 database con una media di 2 o 3 MByte ciascuno, qualcuno meno e
qualcuno di più, e un paio con 30/40MByte
--
Claretta
> Meno stress ai processi concorrenti (allo scheduler), si, ma non alla
>RAM e ai dischi.
>Per i secondi potresti aggiungere ionice -c 3, ma se sei sicura che il
>comando sar� eseguito quando i serverino quasi dorme, puoi evitare tutte e
>due i *nice. Dipende poi da quanto � grande la base di dati, ovviamente.
Allora meglio ancora fare:
nice -n20 ionice -c3 mysqlcheck -u
root -p --check --optimize --all-databases
i database sono circa 150 con una media di 2 o 3 MByte ciascuno, qualcuno
meno e qualcuno di pi�, e un paio con 30/40MByte
--
Claretta