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

Hvordan eksporterer man millioner af rækker fra MySQL til CSV via PHP uden at opbruge hukommelsen?

I stedet for at forsøge at bygge objekttræet, kan du prøve direkte at vælge resultatet i en fil:http://dev.mysql.com/doc/refman/5.7/en/select.html

Noget som

SELECT * INTO OUTFILE "c:/temp/mycsv.csv"
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
LINES TERMINATED BY "\n"
FROM theTable;

Dette skulle overlade jobbet til mysql og omgå eventuelle php-hukommelsesbegrænsninger.

Som venca bemærkede:I dette tilfælde skal den bruger, som du kører mysql-tjenesten under, skrive tilladelser til det pågældende bibliotek.




  1. myisam placere bordlås på bordet, selv når det drejer sig om 'vælg' forespørgsel?

  2. Er der et ANSI SQL-alternativ til søgeordet MYSQL LIMIT?

  3. SQL-forespørgsel med MySQL

  4. Tilgang til flere MySQL-forespørgsler med Node.js