Forum dédié au moteur de recherche et aux techniques d'optimisation par #taggle
Vous n'�tes pas identifi�.
J'ai un fichier texte énorme de 9 Mo que je veux insérer dans une base de données.
Le problème c'est qu'avec phpmyadmin je suis limité à 2 Mo.
J'ai pensé zipper le fichier... mais ça ne marche pas... il m'inscrit des trucs incohérents dans la base.
Comment faire pour charger ce fichier dans la base ?
Hors ligne
tu upload ton fichier SQL sur le serveur.
tu upload et exécutes un fichier dans lequel tu auras mis ceci :
<? echo "base est en cours de restauration<br>"; system("cat tonfichier.sql | mysql --host=nom_serveur_sql --user=nom_utilisateur --password=mot_de_passe nom_de_la_base"); echo "C'est fini"; ?>
attention tout à la fin, après le password, ne pas oublier e mettre un espace et de spécifier à MySQL dans quelle base tu veux écrire ces informations.
faire un drop all sur la BDD de destination avant de lancer ce type de procédure
Derni�re modification par Toucouleur (25-10-2005 08:08:35)
Hors ligne
Merci Toucouleur,
mais avant que je fasse une bourde... c'est pas un fichier sql que je dois installer dans la base. C'est tout simplement un fichier texte avec tout le catalogue d'un annonceur que je dois insérer dans une table que j'ai déjà créé.
Alors je ne sais pas si la procédure est identique.
Hors ligne
Bon... j'ai trouvé :
LOAD DATA INFILE '/home/sites/www.domaine.com/data/nom_du_fichier.txt' INTO TABLE nom_de_table FIELDS TERMINATED BY ',' ENCLOSED BY '' LINES TERMINATED BY '\r\n';
Hors ligne
Sinon un petit tour en ssh si tu as un dédié et le tour est joué
Commande pour importer : mysql -uuser -ppassword nom_de_la_base < fichier.sql
Commande pour exporter : mysqldump -uuser -ppassword nom_de_base > fichier.txt
Derni�re modification par payton (25-10-2005 12:37:19)
Hors ligne
non, même pas, si mysql client est installé chez toi. Tu peux balancer le fichier .sql a distance avec mysql -h lenomduserveur -u login -p ta_db. C'est en particulier vrai si tu es sur une UNIX box ou si tu disposes de mysql.exe dans ta windows box. Pas besoin de ssh, ni de telnet, ni de rsh, ni de quoi que ce soit, dans la mesure où il n'est nul firewall pour couper le port 3306 (si celui-ci est ouvert).
A bon entendeur.
Laurent
Hors ligne
T'a pas l'impression de déterrer un topic là... en plus, je comprends rien à votre jargon.
Hors ligne
Oui 4 mois. ça fait beaucoup. Dsl
Hors ligne