Avatar billede mxs Nybegynder
01. januar 2004 - 23:14 Der er 15 kommentarer og
1 løsning

Hvordan dumper jeg alt i min database og udskriver det på en side

Hey ya

Jeg vil gerne vide hvordan jeg dumper al data i min MySQL database og bagefter udskriver alt på en hjemmeside?


Jeg har ledt lidt på nettet og fundet frem til sætningen:

mysqldump --all-databases > all_databases.sql

Men hvordan får jeg den intigreret den i min kode?
Jeg har prøvet med:

<?php
$conn = mysql_connect("localhost" , "root");
mysql_select_db("Slot" , $conn);

$gor = "mysqldump --all-databases > all_databases.sql";

$dumping = mysql_query($gor);

print("$dumping");
?>

Jeg ved ikke om det er rigtig, men jeg får ingen fejl, bare en hvid side.

Er der bare mig der har glemt noget? Eller kan i komme med en anden måde at gør det på?



MxS @ http://mxs.frac.dk
Slamkodning for fred
Avatar billede arne_v Ekspert
01. januar 2004 - 23:19 #1
mysqldump --all-databases > all_databases.sql

er ikke en SQL kommando men en command line kommando !
Avatar billede arne_v Ekspert
01. januar 2004 - 23:20 #2
Hvis du har privs til det kan du lade dit PHP script udføre kommandoen
og så returnere den skrevne fil.
Avatar billede arne_v Ekspert
01. januar 2004 - 23:20 #3
Alternativt kan du lave SQL sætninger til først at find ealle tabeller
og så læse alle records fra hver.
Avatar billede arne_v Ekspert
01. januar 2004 - 23:21 #4
Udføre en ekstern komamndo i PHP er så vidt jeg ved system og exec funktionerne.
Avatar billede mxs Nybegynder
01. januar 2004 - 23:31 #5
Altså jeg skal exec() et program som kan gøre arbejdet for mig og så få den til at udskrive det den laver på en side?
Avatar billede mxs Nybegynder
01. januar 2004 - 23:33 #6
arne_v nu har jeg altså læst det rimlig mange gange og jeg ved ikke hvad du mener med:"Hvis du har privs til det" =o)
Avatar billede arne_v Ekspert
01. januar 2004 - 23:35 #7
Hvis det er på dit eget system => no problem

Men hvis det er på et web hotel, så er det ikke sikert at de tillader
dine PHP scripts at kalde shell og køre mysqldump og ligge en fil !
Avatar billede arne_v Ekspert
01. januar 2004 - 23:36 #8
Ja - exec kommandoen og så få den genererede fil returneret
(læst ind og outputtet af PHP scriptet eller redirected til eller
noget helt tredie)
Avatar billede mxs Nybegynder
01. januar 2004 - 23:36 #9
Det er bare på mit eget system! Men jeg har ikke rigtig brugt exec til at åbne eksterne programmer med. Hvordan får jeg den til at skrive linjen mysqldump --all-databases > all_databases.sql og samtidig køre et ekstern program?
Avatar billede mxs Nybegynder
01. januar 2004 - 23:37 #10
exec("sti/dump.exe , mysqldump --all-databases > all_databases.sql"); eller hva?
Avatar billede arne_v Ekspert
01. januar 2004 - 23:45 #11
Hvis mysql bin dir er i PATH, så vil jeg *gætte* på:

exec("mysqldump --all-databases > all_databases.sql");

(men jeg er ikek god til PHP)
Avatar billede mxs Nybegynder
01. januar 2004 - 23:54 #12
Jeg har fundet ud af at stien til programmet er
c:\WINDOWS\system32\dump.exe

Men jeg sidder på en windåse maskine:) Har ikke fået taget mig sammen til at få skaffet mig en billig maskine hvor på jeg kan installere linux:( Glæder mig til den dag kommer.
Avatar billede arne_v Ekspert
02. januar 2004 - 07:39 #13
Jeg tror ikke at det er det rigtige program.

Det skal hedde mysqldump.

Og det ligger normalt under mysql dir.
Avatar billede mxs Nybegynder
02. januar 2004 - 16:18 #14
Jeg kan ikke finde noget som hedder det! Jeg har kigget efter mysqldump uder mysql dir og jeg har også søgt bare på mysql, men jeg kan ikke finde noget som er i nærheden af noget med %dump%. Underlig synes jeg.
Avatar billede gregblach Nybegynder
19. januar 2004 - 14:30 #15
Avatar billede mxs Nybegynder
25. januar 2004 - 22:39 #16
Jeg lukker denne tråd
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