MySQL dump/export PHP-val

Sziasztok, MySQL-el kapcsolatban lenne egy kérdésem. Na jó, vmennyire PHP-vel is kapcsolatos.
Szóval olyat szeretnék csinálni, hogy egy PHP fájl legenerálja nekem egy adott MySQL adatabázis tartalmát. Szerkezet, és adatok.
Erre esetlegtudnátoknekem mondani vmi megoldást? A mySQL-nek nincs véletlen ilyen függvénye, ami kiadná ezt?
PHP-ban mysql_query() -vel -szinte- bármilyen MySQL lekérdezést lelehet futtatni, ezért szerintem ez lenne a leg kézenfekvőbb dolog, de bármilyen megoldás érdekelne.
Előre is köszönöm, sziasztok

Hozzászólások

Ez oké, de szerintem 100+ vhostnál karbantartható? Mert ha mindenki ugyanazt eléri, akkor már mind1. Egyébként sem látom, hogy miért kéne exec(), lehet selectelni, meg desc $table-t csinalni es szepen kiirni a dump-ot, illetve megnézni a phpmyadmin megfelelo class-at.

Én is a barkácsolást javaslom. Semeddig nem tart összeütni egy scriptet, ami lekérdezi az adatbázikokat, a táblákat, azon belül táblák szerkezeteit, és tartalmát. Volt ilyen scriptem, de most nem találom. A PHP Black Book-ból puskáztam ki nagy részét. Aztán már nem tart semeddig kitolni egy file-ba. Azért írtam, mert nem akartam ágyúval lőni verébre (phpMyAdmin).
--
A gazdagság legnagyobb forrása a két füled között van.

phpMyBackupPro?

Üdv,
Dw.

"Jegyezze fel a vádhoz - utasította Metcalf őrnagy a tizedest, aki tudott gyorsírni. - Tiszteletlenül beszélt a feljebbvalójával, amikor nem pofázott közbe."

azt szeretném, hogy egy mysql tábla adatait egy excel fájlba írja ki..
olyanra gondolok, mint a phpmyadmin-ba van export Microsoft Excel formába..

csak ezt az weboldalba építve lehetne futtatni
(rákatt..és menti xls-be a tábla adatait)

(szerk: MEGOLDVA)

Látom már megoldva, csak úgy kérdés szintjén: milyen megoldást találtál rá? Én anno simán generáltam egy HTML táblát, és azt ajánlottam fel letöltésre, mint XLS. Nem is tudom már, hogy hol olvastam ezt a megoldást, meg is lepődtem, mikor működött a dolog! :D
----------------------------
HostingNet

Elméletileg ha CSV-t ajánlasz ki, azt a Excel megeszi minden körülmények közt, elég régi benne a support. Asszem annyi van, hogy nem szabány a mezőszepartor a Excel CSV-ben meg a normálban (az egyikben ";" a másikban "," de hogy meik-meik azt nem tom).

Barmit, amit mysql-promptban kiadsz, meg tudsz csinalni a mysql_query()-vel is. Azaz letrehozni tablakat, indexeket, adatokat feltolteni, stb. Ami talan nem biztos, hogy trivialis, az a felhasznalok hozaadasa es/vagy jogosultsag kiadasa, de szerintem az is csak akkor, ha kezzel csinalod (azaz kezzel teszed bele a mysql.users, .db es .hosts tablakba az adatot). Ha egy adott adatbazist csinalnal, szerintem a legegyszerubb (noha nem feltetlenul a legkulturaltabb, de kvazi biztonsagos es hordozhato), hogy a mysqldump idevago "..." reszeit beteszed mysql_query("....",$sock); koze' :]

Egy serveren időzítetten csak weblapot hívhatok meg, és teljes mysql adatbázist szeretnék dumpolni!
A gond hogy biztonsági okokból tiltott a system parancs... Hogy tudom php scriptel ilyenkor dumpolni az adatokat?
MySQL-ből közvetlenül se fogom tudni nekem úgy tűnik:

SELECT *
FROM mytable
INTO OUTFILE 'backup.sql'

MySQL jelzi: Dokumentáció
#1045 - Access denied for user 'qwertz'@'localhost' (using password: YES)

A topicban 2 fele dumpolas van emlitve, mysqldump, illetve select into outfile. Van egy harmadik is, phpmyadmin, de nyilvan nem kerdezne, ha lenne neki phpmyadmin-ja. Az elso kiesik, mert nem tud system()-et, a masodik meg azert, mert rossz helyre probalkozott. Olvasd el a hozzaszolast ilyenkor...
--


()=() Ki oda vagyik,
('Y') hol szall a galamb
C . C elszalasztja a
()_() kincset itt alant.

Mert az into outfile-ban olyan helyet adsz meg, ahova nincs jogod irni. A /tmp-t probald meg, az altalaba nem szokott korlatozott lenni, es elvben onnan meg olvasnod is tudnod kene...
A masik, hogy a szerkezet az kicsit trukkos, el kell olvasni a phpmyadmin kodjat, de szerintem a "DESCRIBE mytable" kimenetet parsolva is el lehet jutni egyfajta eredmenyre...
Ismet mas: erdemes olyan fieldseparatort adni meg az outfile-nak, ami meg csak veletlen se fordulhat elo a dumpolt adatokban, mert a mysql nincs tekintettel erre. En a pipe jelet (|) szoktam favorizalni.
--


()=() Ki oda vagyik,
('Y') hol szall a galamb
C . C elszalasztja a
()_() kincset itt alant.

Javítsatok ki ha tévedek, talán nem értem a problémát. De ehhez a feladathoz most tényleg PHP kell?
Ne már.