User Tools

Site Tools


doc:appunti:linux:sa:mysql

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
doc:appunti:linux:sa:mysql [2022/11/21 16:16] – [Configurazione e uso MySQL] niccolodoc:appunti:linux:sa:mysql [2025/03/12 14:55] (current) – [Restore selettivo di un database] niccolo
Line 179: Line 179:
 </code> </code>
  
 +
 +===== Restore selettivo di un database =====
 +
 +Se si ha un dump generato con **%%mysqldump --all-databases%%** potrebbe essere necessario fare il restore selettivo di un solo database. Una ricetta che si trova diffusamente in rete, ma che è davvero poco efficiente, consiste nel filtrare l'intero dump con il comando **sed** intercettando nelle istruzioni SQL l'inizio e la fine del database.
 +
 +Questo comando estrae dal dump compresso il singolo database e lo scrive in un dump SQL non compresso:
 +
 +<code bash>
 +zcat mysql-dump.sql.gz \
 +    | sed -n '/^-- Current Database: `dbname`/,/^-- Current Database: `/p' \
 +    > dbname-dump.sql
 +</code>
  
 ===== Visualizzare gli errori ===== ===== Visualizzare gli errori =====
Line 288: Line 300:
 SET GLOBAL general_log_file = '/var/log/mysql/mysql.log'; SET GLOBAL general_log_file = '/var/log/mysql/mysql.log';
 SET GLOBAL general_log = 1; SET GLOBAL general_log = 1;
 +</code>
 +
 +Abilitare il logging solo per lo stretto necessario, per evitare consumo di risorse. Impostare **general_log = 0** per fermare il logging.
 +
 +Per vedere le impostazini correnti:
 +
 +<code sql>
 +SHOW GLOBAL VARIABLES LIKE 'general_log_file';
 </code> </code>
  
doc/appunti/linux/sa/mysql.1669043805.txt.gz · Last modified: 2022/11/21 16:16 by niccolo