mysqladmin

mysqladmin è il programma di amministrazione del demone mysqld. Può essere utilizzato per:

  • Monitorare le attività dei client MariaDB (processlist)
  • Ottenere le statistiche di utilizzo e le variabili dal server MariaDB / MySQL
  • Creare ed eliminare database
  • Svuotare i log, le statistiche e le tabelle
  • Terminare le query in esecuzione.
  • Arrestare il server (shutdown)
  • Avviare e arrestare gli slave
  • Controllare se il server è raggiungibile (ping)

Utilizzo

mysqladmin [OPZIONI] comando comando....

Opzioni di mysqladmin

OpzioneSpiegazione
-c, --count=# Numero di iterazioni da eseguire. Funziona solo con -i (--sleep).
--debug-checkControlla la memoria e l'utilizzo dei file aperti prima di uscire.
--debug-infoStampa le informazioni di debug ed esce.
-f, --forceNon chiede conferma prima di eliminare un database; ripetendo più volte il comando, continua anche se si verificano degli errori.
-C, --compressUtilizza la compressione nel protocollo server/client.
--character-sets-dir=nomeDirectory dei set di caratteri.
--default-character-set=nomeImposta il set di caratteri predefinito.
-?, --helpMostra questo help ed esce.
-h, --host=nomeSi connette all'host specificato.
-b, --no-beepDisattiva i beep in caso di errore.
-p, --password[=name]Password da usare per connettersi al server. Se non viene specificata, verrà chiesta da tty.
-P, --port=# Numero di porta da usare per la connessione, o 0 per usare la porta di default specificata, in ordine di preferenza, in my.cnf, $MYSQL_TCP_PORT, /etc/services o il default built-in (3306).
--protocol=nomeIl protocollo da usare per la connessione (tcp, socket, pipe, memory).
-r, --relativeMostra le differenze tra i valori attuali e quelli precedenti, se usato con -i. Attualmente funziona solo con extended-status.
-O, --set-variable=nomeModifica il valore di una variabile. Si noti che questa opzione è deprecata; è possibile impostare la variabile direttamente con --variable-name=valore.
-s, --silentTermina silenziosamente se non può connettersi al server.
-S, --socket=nomeIl file del socket da usare per la connessione.
-i, --sleep=# Esegue i comandi ripetutamente, lasciando trascorrere l'intervallo di tempo specificato.
--sslAbilita le connessioni SSL (abilitato automaticamente se si usano gli altri flag). Si può disabilitare con '--skip-ssl'.
--ssl-ca=nomeFile CA nel formato PEM (si veda la documentazione diOpenSSL, implica --ssl).
--ssl-capath=nomeDirectory CA (si veda la documentazione diOpenSSL, implica --ssl).
--ssl-cert=nomeCertificato X509 nel formato PEM (implica --ssl).
--ssl-cipher=nomeCifratura SSL da usare (implica --ssl).
--ssl-key=nomeChiave X509 nel formato PEM (implica --ssl).
--ssl-verify-server-certVerifica il "Common Name" nel certificato con il nome host usato per connettersi. Questa opzione è disabilitata per default..
-u, --user=nomeNome utente da usare per il login, se non è quello corrente.
-v, --verboseStampa più informazioni.
-V, --versionStampa il numero di versione e termina.
-E, --verticalStampa l'output verticalmente. Simile a '--relative', ma stampa l'output verticalmente.
-w, --wait[=#]Attende e riprova se la connessione fallisce.
--connect_timeout=#
--shutdown_timeout=#

Variabili di mysqladmin (--nome-variabile=valore)

Variabili e opzioni booleaneValore {FALSE|TRUE} (dopo aver letto le opzioni)
count0
debug-checkFALSE
debug-infoFALSE
forceFALSE
compressFALSE
character-sets-dir(Nessun valore predefinito)
default-character-set(Nessun valore predefinito)
host(Nessun valore predefinito)
no-beepFALSE
port3306
relativeFALSE
socket/var/run/mysqld/mysqld.sock
sleep0
sslFALSE
ssl-ca(Nessun valore predefinito)
ssl-capath(Nessun valore predefinito)
ssl-cert(Nessun valore predefinito)
ssl-cipher(Nessun valore predefinito)
ssl-key(Nessun valore predefinito)
ssl-verify-server-certFALSE
user(Nessun valore predefinito)
verboseFALSE
verticalFALSE
connect_timeout43200
shutdown_timeout3600

Opzioni predefinite di mysqladmin

Le opzioni predefinite vengono lette dai seguenti file, nell'ordine:

  1. /etc/my.cnf
  2. /etc/mysql/my.cnf
  3. /usr/etc/my.cnf
  4. ~/.my.cnf

Vengono letti i seguenti gruppi:

  1. mysqladmin
  2. client
  3. client-server
  4. client-mariadb

Le seguenti opzioni possono essere specificate come primo argomento:

OptionDescription
--print-defaultsStampa la lista degli argomenti e termina.
--no-defaultsNon legge le opzioni predefinite dai file.
--defaults-file=# Legge le opzioni predefinite solo dal file specificato.
--defaults-extra-file=# Legge questo file dopo aver letto quelli globali.

Comandi mysqladmin

I comandi disponibili sono i seguenti: (possono essere abbreviati)

ComandiSpiegazione
create databasenameCrea un nuovo database
debugDice al server di scrivere informazioni di debug nel log
drop databasenameCancella un database e tutte le sue tabelle
extended-statusMostra un messaggio di stato esteso del server
flush-all-statisticsSvuota tutte le tabelle delle statistiche
flush-all-statusSvuota lo stato e le statistiche
flush-client-statisticsSvuota le statistiche sui client
flush-hostsSvuota la cache dei nomi host
flush-index-statisticsSvuota le statistiche degli indici
flush-logsSvuota tutti i log
flush-privilegesRicarica le tabelle grant (identico a reload)
flush-slow-logSvuota lo slow query log
flush-statusPulisce le variabili di stato
flush-table-statisticsPulisce le statistiche sulle tabelle
flush-tablesEffettua un flush delle tabelle
flush-threadsSvuota la cache dei thread
flush-user-statisticsPulisce le statistiche sugli utenti
kill id,id,...Termina i thread mysql
password new-passwordCambia la password in new-password nel nuovo formato, l'hashing di MySQL 4.1.
old-password new-passwordCambia la vecchia password in new-password, nel vecchio formato.
pingControlla se mysqld è attivo
processlistMostra un elenco dei thread attivi
reloadRicarica le tabelle grant
refreshFlush di tutte le tabelle, chiude e riapre i file di log
shutdownArresta il server
statusMostra un piccolo messaggio di stato del server
start-slaveAvvia lo slave
stop-slaveArresta lo slave
variablesStampa le variabili disponibili
versionStampa il numero di versione del server

Esempio di utilizzo tipico

Un rapido controllo delle attività del server:

shell> mysqladmin status
Uptime: 8023  Threads: 1  Questions: 14  Slow queries: 0  Opens: 15  Flush tables: 1  Open tables: 8  Queries per second avg: 0.1
shell> mysqladmin processlist
+----+-------+-----------+----+---------+------+-------+------------------+
| Id | User  | Host      | db | Command | Time | State | Info             |
+----+-------+-----------+----+---------+------+-------+------------------+
....
+----+-------+-----------+----+---------+------+-------+------------------+

Informazioni più dettagliate su ciò che sta accadendo (utilissimo per trovare i problemi di un server lento):

shell> mysqladmin --relative --sleep=1 extended-status | grep -v " 0 "

Controllare le variabili di un server in esecuzione:

shell> mysqladmin variables | grep datadir
| datadir                                  | /my/data/ |

Altri modi per arrestare mysqld (Unix)

Se si ottiene l'errore:

mysqladmin: shutdown failed; error: 'Access denied; you need (at least one of) the SHUTDOWN privilege(s) for this operation'

Significa che mysqladmin è stato usato con un utente che non dispone del privilegio SUPER o SHUTDOWN.

Se non si conosce la password dell'utente, si può sempre arrestare il processo mysqld con il comando di sistema kill:

kill -SIGTERM pid-of-mysqld-process

Su Windows si può usare:

NET STOP MySQL

Il comando sopra è identico a mysqladmin shutdown.

Vedi anche

  • mytop, un programma simile a 'top' per MariaDB/MySQL che permette di controllare le operazioni svolte dal server. MariaDB 5.3 comprende una versione di mytop ottimizzata per MariaDB.

Commenti

Sto caricando i commenti......
Content reproduced on this site is the property of its respective owners, and this content is not reviewed in advance by MariaDB. The views, information and opinions expressed by this content do not necessarily represent those of MariaDB or any other party.