2012-04-21 5 views
0

J'essaye d'analyser un grand fichier sql dans un fichier csv. J'ai envisagé d'utiliser fread en php mais je n'arrive pas à déterminer si sql est séparé par des lignes ... bc Je suppose que fread charge les données dans la RAM et cela ne fonctionnerait pas.quelle est la meilleure façon d'analyser un énorme fichier sql

Des idées sur la façon de convertir rapidement sql en csv? (aussi je cours sur une autre machine que mon db est sur ... donc je ne peux pas exporter comme csv malheureusement).

+0

Que contient ce fichier SQL? INSERT instructions à partir d'un vidage de données MySQL? Le format dépendra de la source. –

+0

Êtes-vous capable d'interroger la base de données réelle par opposition à l'analyse d'un fichier SQL? – bricriu

+0

Je peux interroger la base de données ... mais elle est très grande. J'ai essayé mysqldump mais l'option de délimitation de tabulation ne fonctionne que lorsque vous êtes sur les mêmes serveurs que le db. – user1179295

Répondre

0

installer MySQL sur votre machine locale. maintenant vous pouvez importer le fichier sql, puis exporter librement en tant que csv ou ce que vous voulez.

1

"Large" - qu'est-ce que cela signifie pour vous. Vous pouvez enregistrer dans un fichier sur le serveur (le DB de la machine est en cours d'exécution) et compresser/télécharger.

exaple:

SELECT name,lastname,age FROM profile 

La requête renvoie trois colonnes de la table mysql. Maintenant pour rediriger/imprimer dans un fichier:

SELECT name,lastname,age FROM profile INTO OUTFILE '/tmp/userdata.txt' 

Cela va afficher les données dans le fichier transmis dans l'instruction ci-dessus. Pour données de sortie en termes de format CSV ajouter plus d'options à la requête comme suit:

SELECT name,lastname,age FROM profile INTO OUTFILE '/tmp/userdata.txt' 
    FIELDS enclosed by '"' separated by "," LINES TERMINATED BY '\n' 

original post

+0

45 millions de lignes ... Je vais planter la base de données si j'essaie de tout sélectionner. J'utilise le RDS d'aws, ce qui signifie que je ne peux rien sauvegarder sur le serveur qui exécute la base de données ... Je pense que je suis limité à la conversion après avoir exporté du RDS. – user1179295

Questions connexes