Mysql
 sql >> Database >  >> RDS >> Mysql

Esporta database mysql / tabelle mysql in formato json tramite riga di comando O PHP

mysql non può generare direttamente in formato json

quindi hai due opzioni:

  1. esporta in XML l'uso di uno strumento per convertire da XML a JSON (uno strumento che può gestire tabelle di grandi dimensioni ovviamente)

  2. scrivi un piccolo script (ad esempio in PHP) che prelevi i dati dal DB e li scriva su file in JSON

Nota importante:

Se scegli l'opzione nr. (2) potresti avere problemi a caricare i dati dell'intera tabella, convertire in JSON e salvare su file in un unico passaggio "atomico" se hai molti record .

Tuttavia, puoi suddividere l'attività in passaggi.

Fondamentalmente una tabella trasformata in un JSON è un array di oggetti, ogni oggetto rappresenta un singolo record.

  1. Apri una connessione al db

  2. Inizia a scrivere il file di output e apri l'array scrivendo una parentesi quadra aperta [

  3. Esegui la tua query recuperando n ( 1 SORT la tabella da qualsiasi campo -ex. id - e usa il LIMIT clausola)

  4. Converti ogni record con json_econde , scrivi la stringa su file, scrivi una virgola , a meno che tu non abbia scritto l'ultimo record.

  5. Torna a 3 fino a raggiungere l'ultimo record.

  6. Scrivi una parentesi quadra di chiusura nel file ] (chiudendo l'array).

  7. Chiudi il file e la connessione db

Ciò richiederebbe un po' più di programmazione, ma non è scienza missilistica.

...e forse trovi qualcosa online che lo fa già.

Aggiornamento:

Uno script che recupera i dati dal DB e li scrive su file in JSON può essere trovato qui su GitHub:Dump-table-to-JSON (ultimo aggiornamento 2016).