Guida ServBay alla Gestione e Migrazione dei File di Database
ServBay è una potente soluzione per lo sviluppo Web locale, integrando diversi sistemi di gestione database e offrendo una gestione organizzata dei file dati. Comprendere la struttura predefinita di memorizzazione dei file database in ServBay è essenziale per effettuare backup, ripristini e migrazioni in modo sicuro ed efficace.
Questa guida illustra nel dettaglio la struttura dei file database in ServBay e fornisce istruzioni per gestire i dati e migrare tra ambienti utilizzando strumenti standard da riga di comando.
TIP
ServBay offre funzionalità di backup e ripristino del database, permettendoti di eseguire backup automatici o manuali per MySQL, MariaDB e PostgreSQL. Consulta la sezione Backup e Ripristino per maggiori informazioni.
Struttura Predefinita dei File Database in ServBay
Per facilitare la gestione e l’isolamento delle varie versioni di database, ServBay salva tutti i dati dei database nella directory /Applications/ServBay/db
. All’interno di questa cartella, i file sono organizzati per tipo di database, e ulteriormente suddivisi per la versione principale del database.
Ecco un esempio tipico della struttura della directory /Applications/ServBay/db
:
/Applications/ServBay/db
├── mysql
│ ├── 8.0
│ └── 8.1
├── mariadb
│ ├── 10.10
│ ├── 10.11
│ ├── 10.5
│ ├── 10.6
│ ├── 10.7
│ ├── 10.8
│ ├── 10.9
│ ├── 11.0
│ ├── 11.1
│ ├── 11.2
│ └── 11.3
├── postgresql
│ ├── 10
│ ├── 11
│ ├── 12
│ ├── 13
│ ├── 14
│ ├── 15
│ └── 16
└── redis
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Spiegazione della Struttura
/Applications/ServBay/db
: directory principale contenente tutti i file dei database gestiti da ServBay.mysql
: contiene i file dati dei database MySQL. Le sottocartelle corrispondono alle versioni principali, es.8.0
,8.1
.mariadb
: contiene i file dati dei database MariaDB. Le sottocartelle sono organizzate per versione principale, come10.11
,11.3
.postgresql
: contiene i file dati di PostgreSQL, suddivisi per versione principale (15
,16
ecc.).redis
: contiene i file di persistenza di Redis, generalmente denominatidump.rdb
.
Questa struttura ti consente di installare e avviare contemporaneamente più versioni principali di uno stesso database in ServBay, mantenendo i dati separati e sicuri.
Gestione dei File Database
Durante lo sviluppo locale, potresti spesso dover eseguire backup, ripristini o migrazioni di database. Di seguito vengono illustrati i metodi standard per queste operazioni tramite gli strumenti da riga di comando dei vari database. Ricorda che normalmente tali operazioni vanno svolte all’interno del terminal di ServBay o assicurandosi che le variabili d’ambiente siano configurate correttamente per accedere ai client database richiesti.
Backup del Database
Il backup regolare dei dati è fondamentale per la sicurezza. Ecco come effettuare il backup dei database in ServBay a seconda della tipologia.
Backup di MySQL
Lo strumento standard per il backup di MySQL è mysqldump
.
bash
# Passa al terminal fornito da ServBay, o assicurati che la variabile PATH includa la cartella bin di ServBay
# ad esempio: export PATH="/Applications/ServBay/bin:$PATH"
mysqldump -u your_username -p your_database > /Applications/ServBay/backup/your_database.sql
1
2
3
4
2
3
4
your_username
: sostituisci con il nome utente del database.your_database
: sostituisci con il nome del database da salvare./Applications/ServBay/backup/your_database.sql
: percorso e nome del file di backup. Si consiglia di salvare il file di backup al di fuori della directory di ServBay, ad esempio nella tua cartella utente.
Backup di MariaDB
Il backup per MariaDB è identico a MySQL, utilizzando sempre mysqldump
.
bash
# Passa al terminal fornito da ServBay, o assicurati che la variabile PATH includa la cartella bin di ServBay
mysqldump -u your_username -p your_database > /Applications/ServBay/backup/your_database.sql
1
2
3
2
3
- I parametri sono gli stessi descritti sopra.
Backup di PostgreSQL
Per PostgreSQL si utilizza pg_dump
. In ServBay, PostgreSQL è configurato per accettare connessioni tramite Unix Domain Socket al percorso /Applications/ServBay/tmp
, perciò bisogna specificare -h /Applications/ServBay/tmp
.
bash
# Passa al terminal fornito da ServBay, o assicurati che la variabile PATH includa la cartella bin di ServBay
pg_dump -h /Applications/ServBay/tmp -U your_username -d your_database -F c -b -v -f /Applications/ServBay/backup/your_database.dump
1
2
3
2
3
- Parametri di connessione: indicano come connettersi al server PostgreSQL.
- macOS:
-h /Applications/ServBay/tmp
(percorso Unix Domain Socket) - Windows:
-h localhost -p 5432
(connessione TCP)
- macOS:
-U your_username
: sostituisci con il nome utente del database.-d your_database
: il nome del database da salvare.-F c
: formato di archivio personalizzato (consigliato).-b
: include oggetti di tipo blob.-v
: modalità verbosa.-f /Applications/ServBay/backup/your_database.dump
: percorso e nome del file di backup.
Backup di Redis
Il backup di Redis si effettua copiando il file di persistenza dump.rdb
.
bash
# Passa al terminal fornito da ServBay
# Assicurati che Redis sia in esecuzione o che la funzione di salvataggio automatico (BGSAVE) sia abilitata
cp /Applications/ServBay/db/redis/dump.rdb /Applications/ServBay/backup/dump.rdb
1
2
3
4
2
3
4
/Applications/ServBay/db/redis/dump.rdb
: percorso predefinito del file di persistenza Redis./Applications/ServBay/backup/dump.rdb
: percorso e nome file del backup.
Ripristino del Database
Se hai perso dati o hai bisogno di ritornare ad una versione precedente, puoi ripristinare il database dal backup.
Ripristino di MySQL
Si utilizza il client mysql
per ripristinare da un file di backup SQL.
bash
# Passa al terminal fornito da ServBay
mysql -u your_username -p your_database < /Applications/ServBay/backup/your_database.sql
1
2
3
2
3
your_username
: nome utente del database.your_database
: nome del database su cui effettuare il ripristino; solitamente il database va creato prima./Applications/ServBay/backup/your_database.sql
: percorso del file di backup.
Ripristino di MariaDB
La procedura è identica a quella per MySQL, usando sempre il client mysql
.
bash
# Passa al terminal fornito da ServBay
mysql -u your_username -p your_database < /Applications/ServBay/backup/your_database.sql
1
2
3
2
3
- Parametri come sopra.
Ripristino di PostgreSQL
Per ripristinare un backup in formato personalizzato si utilizza pg_restore
, specificando il percorso del socket.
bash
# Passa al terminal fornito da ServBay
pg_restore -h /Applications/ServBay/tmp -U your_username -d your_database -v /Applications/ServBay/backup/your_database.dump
1
2
3
2
3
- Parametri di connessione:
- macOS:
-h /Applications/ServBay/tmp
(Unix Domain Socket) - Windows:
-h localhost -p 5432
(TCP)
- macOS:
-U your_username
: nome utente del database.-d your_database
: nome del database da ripristinare (da creare prima).-v
: modalità dettagliata.- Percorso file backup: da sostituire con il tuo percorso backup.
- macOS:
/Applications/ServBay/backup/your_database.dump
- Windows:
C:\ServBay\backup\your_database.dump
- macOS:
Ripristino di Redis
Per ripristinare Redis si copia il file di backup dump.rdb
nella directory dati. Attenzione: assicurati che il servizio Redis sia fermo prima di sovrascrivere il file.
bash
# Passa al terminal fornito da ServBay
# Ferma il servizio Redis in ServBay
# Copia il file di backup
cp /Applications/ServBay/backup/dump.rdb /Applications/ServBay/db/redis/dump.rdb
# Avvia nuovamente il servizio Redis in ServBay
1
2
3
4
5
2
3
4
5
/Applications/ServBay/backup/dump.rdb
: percorso del file di backup./Applications/ServBay/db/redis/dump.rdb
: percorso predefinito del file dati Redis.
Migrazione del Database
La migrazione consiste nello spostamento del database da un ambiente (ad esempio un’altra istanza di ServBay, un server remoto o locale) ad un altro. Normalmente si tratta di esportare i dati dalla sorgente e importarli nell’ambiente di destinazione.
Migrazione di MySQL
Guida alla Migrazione MySQL — scenario comune nello sviluppo giornaliero.
Esporta il database nella sorgente:
bash# Nel terminal dell’ambiente sorgente mysqldump -u your_source_username -p your_database > your_database.sql
1
2your_source_username
: nome utente del database nella sorgente.your_database
: nome del database da migrare.your_database.sql
: nome del file esportato.
Trasferisci il file SQL esportato all’ambiente di destinazione: utilizza
scp
o altro strumento per trasmettere il file nella directory di backup accessibile da ServBay (es./Applications/ServBay/backup/
).Crea il database nell’ambiente ServBay di destinazione:
bash# Nel terminal di ServBay destinazione mysql -u your_target_username -p -e "CREATE DATABASE your_database;"
1
2your_target_username
: nome utente database sull’ambiente ServBay target.your_database
: nome identico a quello sorgente.
Importa i dati nell’ambiente ServBay di destinazione:
bash# Nel terminal ServBay target mysql -u your_target_username -p your_database < /path/to/your_database.sql
1
2/path/to/your_database.sql
: percorso reale del file SQL sull’ambiente di destinazione.
Migrazione di MariaDB
Guida alla Migrazione MariaDB — i passaggi sono identici a MySQL, essendo gli strumenti e il formato dei file comuni.
- Esporta il database dalla sorgente:bash
# Terminale sulla sorgente mysqldump -u your_source_username -p your_database > your_database.sql
1
2 - Trasferisci il file SQL esportato all’ambiente di destinazione.
- Crea il database sulla destinazione ServBay:bash
# Terminale ServBay destinazione mysql -u your_target_username -p -e "CREATE DATABASE your_database;"
1
2 - Importa il database sulla destinazione ServBay:bash
# Terminale ServBay destinazione mysql -u your_target_username -p your_database < /path/to/your_database.sql
1
2
Migrazione di PostgreSQL
Guida alla Migrazione PostgreSQL — con pg_dump
e pg_restore
, prestando attenzione al percorso del socket ServBay.
Esporta il database dalla sorgente:
bash# Sul terminale della sorgente # Se la sorgente è ServBay pg_dump -h /Applications/ServBay/tmp -U your_source_username -d your_database -F c -b -v -f your_database.dump # Se la sorgente è un sistema diverso, regola i parametri di connessione
1
2
3
4your_source_username
: nome utente database sulla sorgente.your_database
: nome database da migrare.your_database.dump
: nome file backup.
Trasferisci il file di backup alla destinazione ServBay: usa
scp
o altro programma per trasmettereyour_database.dump
dove ServBay può accedervi.Crea il nuovo database sulla destinazione ServBay:
bash# Terminale ServBay destinazione # Collegati al database postgres di default per la creazione psql -h /Applications/ServBay/tmp -U your_target_username -d postgres -c "CREATE DATABASE your_database;"
1
2
3your_target_username
: nome utente database target.your_database
: nome del nuovo database.
Importa il backup sulla destinazione ServBay:
bash# Terminale ServBay destinazione pg_restore -h /Applications/ServBay/tmp -U your_target_username -d your_database -v /path/to/your_database.dump
1
2/path/to/your_database.dump
: percorso del file backup nell’ambiente target.
Migrazione di Redis
La migrazione di Redis consiste generalmente nel copiare direttamente il file dump.rdb
.
Recupera il file
dump.rdb
dalla sorgente:bash# Sul terminale della sorgente # Assicurati che il servizio Redis sia fermo, o attendi che BGSAVE sia completato cp /path/to/source/redis/dump.rdb ./dump.rdb
1
2
3Trasferisci il file
dump.rdb
nella directory dati Redis di ServBay destinazione:bash# Sul terminale della sorgente o tramite server intermedio scp ./dump.rdb your_target_server:/Applications/ServBay/db/redis/dump.rdb
1
2your_target_server
: indirizzo o dominio del server ServBay target.- Attenzione: prima di copiare su
/Applications/ServBay/db/redis/
, assicurati che Redis in ServBay sia fermo.
Avvia Redis nell’ambiente ServBay di destinazione: una volta avviato, Redis caricherà automaticamente il nuovo file
dump.rdb
.
Avvertenze
- Stop servizi: prima di qualsiasi operazione di copia o spostamento di file di database (specialmente di MySQL/MariaDB/PostgreSQL), termina sempre i servizi database tramite l’interfaccia ServBay o i tool CLI. Copiare file mentre il database è in esecuzione può causare corruzione o inconsistenza dati. Anche per Redis è obbligatorio fermare il servizio prima di ripristinare da
dump.rdb
. - Permessi: assicurati di avere i permessi adeguati per accedere, modificare e importare file e directory coinvolte nella procedura.
- Percorsi dei file: verifica attentamente il percorso di installazione di ServBay (solitamente
/Applications/ServBay
) oltre alla struttura delle sottocartelle per le diverse versioni dei database. - Utenti e permessi database: dopo la migrazione, valuta se è necessario aggiornare gli utenti, i permessi e i file di configurazione del database per adattarli alla nuova ambiente.
- Backup integrato: ServBay offre anche una comoda funzione integrata di backup e ripristino tramite interfaccia GUI, che supporta siti, database, certificati SSL e impostazioni, ideale come complemento o alternativa alle procedure manuali.
Conclusione
ServBay, grazie alla struttura standardizzata dei file, fornisce ai developer una base affidabile per la gestione dei file database. In questa guida sono stati illustrati i percorsi dei file per MySQL, MariaDB, PostgreSQL e Redis nel contesto ServBay, insieme a procedure pratiche di backup, ripristino e migrazione tramite strumenti CLI. Apprendere queste procedure ti permetterà di amministrare con sicurezza i dati del tuo ambiente di sviluppo locale, garantendo protezione e efficienza nella migrazione dei progetti tra ambienti diversi. Integrando le funzioni integrate offerte da ServBay (come il backup automatico), potrai aumentare la produttività e semplificare la gestione dei dati nel tuo workflow di sviluppo.