Esiste qualche app per mac per dividere file sql o anche script? Ho un file di grandi dimensioni che devo caricare su hosting che non supporta file di oltre 8 MB.Come dividere sql in MAC OSX?
* Non ho accesso SSH
Esiste qualche app per mac per dividere file sql o anche script? Ho un file di grandi dimensioni che devo caricare su hosting che non supporta file di oltre 8 MB.Come dividere sql in MAC OSX?
* Non ho accesso SSH
È possibile utilizzare questo: http://www.ozerov.de/bigdump/
O
Utilizzare questo comando per dividere il file sql
split -l 5000 ./path/to/mysqldump.sql ./mysqldump/dbpart-
Il comando di divisione prende un file e lo spezza in più file. La parte -l 5000 dice di dividere il file ogni cinquemila righe. Il prossimo bit è il percorso del tuo file, e la parte successiva è il percorso in cui vuoi salvare l'output. I file verranno salvati come qualsiasi nome di file specificato (ad esempio "dbpart-") con una combinazione di lettere alfabetiche aggiunta.
Ora dovresti essere in grado di importare i file uno alla volta tramite phpMyAdmin senza problemi.
Maggiori informazioni http://www.webmaster-source.com/2011/09/26/how-to-import-a-very-large-sql-dump-with-phpmyadmin/
La caratteristica UploadDir in phpMyAdmin potrebbe aiutare, se si ha accesso FTP e possibile modificare la configurazione del vostro phpMyAdmin (o è permesso di installare la propria istanza di phpMyAdmin).
http://docs.phpmyadmin.net/en/latest/config.html?highlight=uploaddir#cfg_UploadDir
Questo strumento dovrebbe fare il trucco: MySQLDumpSplitter
E 'libero e open source.
A differenza della risposta accettata a questa domanda, questa app manterrà sempre gli inserti estesi intatti, quindi la forma precisa della query non ha importanza; i file risultanti avranno sempre una sintassi SQL valida.
Full disclosure: Sono un azionista della società che ospita questo programma.
È possibile dividere a lavorare con le istruzioni SQL:
csplit -s -f db-part db.sql "/^# Dump of table/" "{99}"
Che rende fino a 99 file denominati 'db-parte [n]' dal db.sql
È possibile utilizzare "CREATE TABLE" oppure "INSERT INTO" anziché "# Dump of ..."
Inoltre: evitare l'installazione di programmi o il caricamento dei dati in qualsiasi servizio online. Non sai cosa sarà fatto con le tue informazioni!
Sul mio sistema, 'split' ha anche un flag' -b'. Potresti quindi usare 'split -b 8m' invece di' split -l 5000'. Naturalmente, in entrambi i casi, è necessario concatenare i file sul server, poiché nessuno dei due garantisce che non vengano divisi durante alcuni comandi. –
Grazie Ragazzi, è stato grandioso, ma ho ricevuto un errore "# 1064 - Hai un errore nella sintassi SQL, controlla il manuale che corrisponde alla versione del tuo server MySQL per la sintassi corretta da usare vicino ..." è quello causato perché per la divisione? – user3067592
Sì, come @WaleedKhan Khan menzionato in precedenza che devi controllare di non dividere alcun comando. – souvickcse