importation de fichier par SSH

WRInaute occasionnel
BOnjour,
je suis en train de basculer de mon mutu à un serveur VDS. j'ai une bdd de 80MB à importer, ce que ne me permet pas phpmyadmin.

il me reste donc la solution SSH d'après ce que j'ai compris sur le web. oui mais voilà, il y a 1 jour, je ne savais pas ce qu'est ssh... :cry:

après renseignements et recherches, j'ai installé putty qui me permet de me connecter à mon serveur...

par contre, je ne connais pas les instructions pour importer. quelqu'un peut-il m'aider ?
 
WRInaute discret
Ce qui semble le plus simple :

exporter la base de données de ton serveur mutualisé en SQL, uploader le script SQL sur ton VDS, et l'importer à l'aide du client mysql.

Cependant, je ne suis pas sur que tu ais suffisamment d'accès sur le mutualisé pour pouvoir exporter en SQL. Si c'est le cas, tu peux aussi procéder de la sorte :

Créer un script PHP qui fait un "SELECT * FROM [toutes tes tables] " de la base du mutualisé, et accéder au serveur MySQL du VDS via le même script et charger les données récupérées.

Dans l'idée, ça donnerai :

Code:
$conn = mysql_connect(LOCALHOST, USER, PASS, BDD);
$requete = mysql_query($conn, 'SELECT * FROM une_table');

$conn_VDS = mysql_connect(IP_VDS, USER_VDS, PASS_VDS, BDD_VDS);
while(resultat = mysql_fetch_array($requete)){
    mysql_query($conn_VDS, 'INSERT INTO une_table VALUES ($resultat[0], $resultat[1] ... ));
}

Faut bien sur améliorer beaucoup, mais dans l'idée, un truc comme ça semble possible.
Mais le mieux, c'est quand même de passer si possible par le client MySQL, qui dipose de toutes les fonctions nécessaires.

PS : si tu as accès aux fichiers mysql sur le mutu, tu peux aussi les recopier sur ton VDS à l'aide de la commande "scp"

En espérant que ça puisse t'aider :)
 
WRInaute impliqué
le plus simple :

mysqldump -h localhost -u username -password nom_base > nom_du_fichier_final.sql

tu obtiendras un dump de ta base sur ton FTP... que tu n'as plus qu' a récupérer
 
WRInaute accro
pedouille a dit:
C'est possible d'exécuter ces commandes sur un mutualisé ? a-t-on accès au shell ?
Ca dépend de l'hébergeur.
Mais très rare sont ceux qui proposent cette possibilité, a part les fou ou ceux qui ont beaucoup d'argent pour mettre en place des systèmes de sécurité performant et à jour. ( selon moi :lol: )
 
WRInaute occasionnel
je suis parti avec ssh (que j'apprends sur le tas)

sur mon mutu, j'ai fait un export que j'ai déposé sur mon dédié virtuel

mais maintenant je galère comme un malade pour restaurer mon fichier. alors voilà ce que j'ai fait :

- j'ai uploadé un fichier de 8MB posts.sql à restaurer dans une bdd qui existe et qui s'appelle AM_Forum. ce fichier se trouve dans home/web/ateliermagique.com/ftp/www/
- j'ai créé un utilisateur avec les privilèges sur cette bdd qui s'appelle admin_AM_Forum

- je me place dans ce répertoire et je tape la commande ssh suivante : mysql -u root -p "le mot de passe que SIVIT m'a donné" -D AM_Forum < posts.sql
- j'obtiens la ligne "Enter Password" : la je tape le meme mot de passe et j'obiens alors le message d'erreur : ERROR 1049 : Unknown database 'le mot de passe SIVIT' ????????

j'essaie alors de taper la meme commande avec le profil de ma bdd : mysql -u admin_AM_Forum -p <password> -D AM_Forum < posts.sql
Enter password
--> ERROR 1044 : Access denied for User admin_AM_Forum to database <password>

je ne comprends rien. quel profil faut-il utiliser ? root ou le profil créé sur phpmyadmin ?
pourquoi dans un cas il me dit qu'il ne trouve pas la bdd portant le nom du pwd du root, alors que dans l'autre, il me dit que le profil n'est pas autorisé sur une bdd portant comme nom le pwd du profil créé ???

j'ai cherché dans l'aide mysql, sur le forum et de partout sur Internet sans succès. Je desespere de pouvoir restaurer mes données. Quelqu'un a-t-il une idée ?
 
WRInaute discret
C'est une simple erreur de commande :

quand tu indique "-p", il te demandera le mot de passe apres lancement (Quand il te demande Enter password). Le problème, c'est que tu lui rajoute "le mot de passe de sivit" alors qu'il ne l'attend pas. Il en déduit donc qu'il s'agit du nom de la base de données, qui n'existe pas, d'où le message d'erreur.

Pour corriger le problème, tu as 2 solutions :

soit
Code:
mysql -u root --password="le mot de passe que SIVIT m'a donné" -D AM_Forum < posts.sql

ou
Code:
mysql -u root -p -D AM_Forum < posts.sql

et tu met ton mot de passe quand il te le demande.

Voila, j'espère que c'est bien ça, et bon courage !

PS : pourrais-tu m'indiquer comment tu as fait l'export, et chez quel hébergeur tu es pour mon mutualisé ;)
 
WRInaute occasionnel
bonjour,
merci c'était bien ca !!! ;-)

j'ai fait l'export par phpmyadmin, tout simplement dans un fichier sql que j'ai ftp ...

j'étais chez HAISOFT pour le mutualisé
 
Discussions similaires
Haut