Basculer avec un script des données d'1 BDD1 vers 1 BDD 2 et cela auto

Basculer avec un script des données d'1 BDD1 vers 1 BDD 2 et cela auto - PHP - Programmation

Marsh Posté le 30-09-2005 à 10:41:46    

Bonjour,
 
voila j'aimerais exécuter un script qui copie des données d'une base de données N°1 vers une autre base de données...
Est-ce posssible et comment ?
 
Merci de votre aide

Reply

Marsh Posté le 30-09-2005 à 10:41:46   

Reply

Marsh Posté le 30-09-2005 à 10:47:37    

en shell : mysqldump

Reply

Marsh Posté le 30-09-2005 à 10:48:49    

pas compris ?

Reply

Marsh Posté le 30-09-2005 à 10:49:37    

C'est possible, en ouvrant une conection vers chaque base.
Des requettes select d'un côté, des requettes insert et/ou update de l'autre.

Reply

Marsh Posté le 30-09-2005 à 10:51:21    

Mais....on fait cela comment ???

Reply

Marsh Posté le 30-09-2005 à 11:02:25    

je souhaite, par exemple tous les jours, faire jouer un script automatique qui copie les nouvelles inscriptions du jour (...) vers une autre base !
Je suis chez lycos et ce genre de chose est permis ! il suffit de construire le script.. Mais là, je cale....
Les données à copier de la table "membre" sont : login et mail vers la table "wa_abonnes", encréant de nouveaux "pseudo" et "email"....
 
voila la table initiale :
CREATE TABLE membre (
id int(11) NOT NULL auto_increment,
login text NOT NULL,
pass_md5 text NOT NULL,
mail text NOT NULL,
jesuis text NOT NULL,
PRIMARY KEY (id)
) TYPE=MyISAM;
 
et voila la table vers laquelle cela doit aller ...
CREATE TABLE wa_abonnes (
  abo_id mediumint(8) unsigned NOT NULL auto_increment,
  abo_pseudo varchar(30) NOT NULL default '',
  abo_pwd varchar(32) NOT NULL default '',
  abo_email varchar(255) NOT NULL default '',
  abo_lang varchar(30) NOT NULL default '',
  abo_register_key varchar(32) NOT NULL default '',
  abo_register_date int(11) NOT NULL default '0',
  abo_status tinyint(1) NOT NULL default '0',
  PRIMARY KEY  (abo_id),
  KEY abo_status (abo_status)
) TYPE=MyISAM;

Reply

Marsh Posté le 30-09-2005 à 11:10:44    

Bon, tu conais quoi au php?
Va faloir, que tu lises des tutoriels par ce que la conection à une base mysql, on le trouve expliquer dans énormément de tutoriel.
Et en php, une conection vers une bdd ou deux conections chacune vers une bdd, c'est pas plus compliqué.
 
Quand aux requettes SQL, il te faut apprendre les bases du SQL, la aussi il existe des tutoriels.
 
Et si t'as des problémes dont la solution n'est pas dans les tutoriels ni dans la doc de php, et que tu reviens avec du code que t'as essayé de faire toi, alors on t'aidera volontier à corriger tes erreurs. :)

Reply

Marsh Posté le 30-09-2005 à 11:15:27    

oui mais...je ne voudrais pas "crasher" mes BDD existantes par de mauvaises manip

Reply

Marsh Posté le 30-09-2005 à 11:20:40    

thireg a écrit :

oui mais...je ne voudrais pas "crasher" mes BDD existantes par de mauvaises manip


Ca, hein... On fait des backups et on teste sur des tables temporaires à défaut d'avoir un environnement de staging.   [:pingouino]


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
Reply

Marsh Posté le 30-09-2005 à 11:30:57    

:( je vois que je vais pleurer un max

Reply

Marsh Posté le 30-09-2005 à 11:30:57   

Reply

Marsh Posté le 30-09-2005 à 11:38:31    

T'as déjà fait des select et des insert, avec PHP & MySql, ou jamais ?

Reply

Marsh Posté le 30-09-2005 à 11:49:04    

Oula, tes tables ont une structure qui est différente..
Il te faut récuperer les inscriptions du jour sur ta premiere table (comment vas tu faire sans champ date sur la table initiale?)
et les transférer sur l'autre table avec un insert sur la deuxieme base
 
Il te faut bien sur ouvrir une connexion sur chaque BDD et formater ta requete "insert" sur la deuxieme base a partir des infos que tu recup de ton "select" sur la premiere base..
 
si t'as peur de crasher ta bdd, tu fais un bakckup ou tu crées une table wa_abonnes_test sur ta bdd de destination..

Reply

Marsh Posté le 30-09-2005 à 12:12:30    

le mieux serait peut etre que j'insère dans la deuxième base les champs de la 1ere : etque mon script qui insérait dans la 1ere inscrive dans la deuxième "modifiée"
cela est-il posssible ? il suffit alors juste de modifier les lignes de la base 1 vers la base 2

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed