Avatar billede pmnielsen Novice
17. oktober 2011 - 21:41 Der er 12 kommentarer og
1 løsning

Mysql sync / update

Jeg har en mysql database på min webside. når jeg retter på siden bruger jeg en server på min computer (localhost) til at teste på.

Lige nu sletter jeg den på localhost og eksporter den på websiden(med phpmyadmin), hvorefter jeg køre eksporten som sql i localhost/phpmyadmin.

Er er en nemmere måde at gøre databasen på websiden og localhost ens?
Avatar billede SFNP84 Nybegynder
18. oktober 2011 - 09:26 #1
Hvis du er lidt fix på fingerne og lidt inde i fx. powershell. Så ville du kunne lave et powershell script der kan sync de 2 databaser hvis det er.
Avatar billede arne_v Ekspert
19. oktober 2011 - 14:20 #2
Det behoever ikke vaere powershell. Enhver form for programmerings sprog kan bruges. Ogsaa f.eks. PHP.

Men loesningen maa vaere noget automatisering.
Avatar billede pmnielsen Novice
19. oktober 2011 - 20:18 #3
fix på fingerne, måske. Men jeg ved ikke noget om powershell, er nok mest til php løsningen.

Jeg kan ikke lige overskue at skirve scriptet der laver noget (opdatere hvis forskelligt)

Jeg regner med at det bliver noget med at slette databasen på localhost, lave noget dump på den "rigtige database" og bruge dumpen til at oprette ny database op localhost.

ved ikke om koden bare skal være (slet,dump,opret) lyder næsten for nemt.
men hvis der er nogen der kan hjælpe med lidt kode kunne det være dejligt.

Det skal siges at databasen ikke er kæmpe stor(regner med det har noget at sige når man sletter alt og opretter ny.)
Avatar billede pmnielsen Novice
24. oktober 2011 - 20:07 #4
Ses ikke ud til der kommer mere. skriv svar hvis i vil have point
Avatar billede arne_v Ekspert
24. oktober 2011 - 20:24 #5
hvis du kan connecte direkte til databasen er det nemt at dumpe - eller skal du noget kalde PHPMyAdmin.

Og et svar.
Avatar billede pmnielsen Novice
26. oktober 2011 - 20:50 #6
jeg kan connecte til databasen.
kan Arne_v hjælpe mig lidt på vej?.
gemmer den  dumpen i en fil man derefter kan køre i den anden database ?
Avatar billede arne_v Ekspert
26. oktober 2011 - 21:05 #7
Jeg ville lave det hele i et lille program.

Logikken er simpel:

con1 = connection remote
con2 = connection local
for alle tabeller i databasen
  SELECT * FROM tabel / con1
  for alle raekker
      INSERT INTO tabel VALUES(...) / con2
Avatar billede arne_v Ekspert
26. oktober 2011 - 21:06 #8
30-40 linier PHP burde kunne goere det
Avatar billede pmnielsen Novice
26. oktober 2011 - 21:07 #9
skal jeg ikke have slettet databasen på local først?
Avatar billede arne_v Ekspert
26. oktober 2011 - 21:15 #10
noejes med at slette data
Avatar billede pmnielsen Novice
26. oktober 2011 - 21:40 #11
Jeg vil jo også gerne have med hvis jeg har oprettet nogle nye felter i databasen.

Jeg gør det nu i phpmyadmin.

Sletter det hele på localhost.
ekspotere databasen fra server.
og køre dataen fra eksporten i QSL fane i phpmyadmin.

Viker fint men kunne godt tænke mig PHP-scriptet kunne gøre det med 1 klik.
Avatar billede arne_v Ekspert
27. oktober 2011 - 01:02 #12
con1 = connection remote
con2 = connection local
for alle tabeller i databasen
  DROP TABLE tabel / con2
  SHOW CREATE TABLE tabel / con1
  CREATE TABLE tabl / con2
  SELECT * FROM tabel / con1
  for alle raekker
      INSERT INTO tabel VALUES(...) / con2
Avatar billede arne_v Ekspert
27. oktober 2011 - 01:03 #13
Kod det i PHP.

Lav et shortcut paa dit skrivebord til:

php.exe getdata.php

og dobbeltklik paa det.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester



IT-JOB