webForumDet fria alternativet

Skapa Dump av MySQL DB med PHP

5 svar · 492 visningar · startad av peppar

pepparMedlem sedan dec. 2001873 inlägg
#1

I PHPMyAdmin finns det ett verktyg för att skapa en dump av en databas så man får både struktur och innehåll.
Jag skulle behöva få ihop ett enkelt skript för att kunna göra likadant fast bara med en knapptryckning innifrån en konsoll/webbsida.

Har letat men kanske inte så nogrannt... Någon som har ngt tips då jag är helt kass på PHP.

pepparMedlem sedan dec. 2001873 inlägg
#2

Hittade denna sidan, kan det vara ngt tro?

http://www.php-mysql-tutorial.com/perform-mysql-backup-php.php

KimMedlem sedan jan. 20007 697 inlägg
#3

Japp, det kan det verkligen. Använd det som det står där så har du väl precis den funktion du själv vill åt. :)

pepparMedlem sedan dec. 2001873 inlägg
#4

Tänk vad skönt när det inte är krångligare än så. Nu skall den bara lära sig att lajja med konsollen :)

EDIT/ Men den tar ju bara med sig EN tabell i databasen, kan man komma runt att hårdkoda ALLA tabeller...?

KimMedlem sedan jan. 20007 697 inlägg
#5

Använd funktionen system() som det står om på sidan du länkade till. Med den funktionen kan du exekvera vilket systemkommando du vill, det här fallet mysqldump som gör en dump av hela din databas.

<?php
include 'config.php';
include 'opendb.php';

$backupFile = $dbname . date("Y-m-d-H-i-s") . '.gz';
$command = "mysqldump --opt -h $dbhost -u $dbuser -p $dbpass $dbname | gzip > $backupFile";
system($command);

include 'closedb.php';
?>
spangoMedlem sedan juni 20008 205 inlägg
#6

Och kom ihåg att quota indatan så att man inte skickar in ett användarnamn som typ ; rm -rf / # och spränger hela webbservern i småbitar.

<?php
include 'config.php';
include 'opendb.php';

$backupFile = $dbname . date("Y-m-d-H-i-s") . '.gz';
$command = sprintf("mysqldump --opt -h %s -u %s -p %s %s | gzip > %s", escapeshellarg($dbhost), escapeshellarg($dbuser), escapeshellarg($dbpass), escapeshellarg($dbname), escapeshellarg($backupFile));
system($command);

include 'closedb.php';
?>
131 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)