Mysql Dump: differenze tra le versioni
| Riga 15: | Riga 15: | ||
<code>--no-autocommit</code> non usa autocommit ma start transaction e commit esplicito a fine di ogni tabella |
<code>--no-autocommit</code> non usa autocommit ma start transaction e commit esplicito a fine di ogni tabella |
||
<code>--extended-insert</code> |
<code>--extended-insert</code> insert di più righe nello stesso statement, velocizza |
||
<code>--users</code> esporta definizioni utenti e privilegi |
<code>--users</code> esporta definizioni utenti e privilegi |
||
<code>--single-transaction</code> consistenza di lettura del db tramite transazione, evita lock sul database sorgente |
<code>--single-transaction</code> consistenza di lettura del db tramite transazione, evita lock sul database sorgente |
||
<code>--default-character-set</code> imposta il characterset del dump |
|||
<code>--no-set-names</code> e <code>--skip-set-charset</code> evitano che le create tables portino il charset del database sorgente, utile se si vuole migrare charset |
|||
==Import del Dump== |
==Import del Dump== |
||
Versione delle 11:57, 9 giu 2026
Creazione Dump
Dump dei dati di un singolo database
mysqldump --no-autocommit --hex-blob --single-transaction --quick --flush-logs --set-gtid-purged=OFF --log-error=output.log --result-file=output.sql --skip-lock-tables ${DB}
Se si aggiunge --no-create-info non vengono generate le DDL delle tabelle
Se si aggiunge --no-data vengono generate solo le DDL senza le insert dei dati
--disable-keys disabilita indici prima di importare e abilita indici dopo import, utile per velocizzare
--add-locks esegue lock table prima di importare, velocizza
--no-autocommit non usa autocommit ma start transaction e commit esplicito a fine di ogni tabella
--extended-insert insert di più righe nello stesso statement, velocizza
--users esporta definizioni utenti e privilegi
--single-transaction consistenza di lettura del db tramite transazione, evita lock sul database sorgente
--default-character-set imposta il characterset del dump
--no-set-names e --skip-set-charset evitano che le create tables portino il charset del database sorgente, utile se si vuole migrare charset
Import del Dump
mysql --database=${DB} --batch < output.sql > import.log
Character set e collation
select schema_name,default_collation_name,default_character_set_name from information_schema.schemata;
Grandezza degli schemi
SELECT table_schema AS 'Schema', ROUND(SUM(data_length + index_length) / (1024 * 1024), 2) AS 'Dimensione (MB)' FROM information_schema.TABLES GROUP BY table_schema ORDER BY SUM(data_length + index_length) DESC;