doodlemat Δημοσ. 13 Οκτωβρίου 2013 Δημοσ. 13 Οκτωβρίου 2013 Καλησπέρα παιδιά,Αντιμετωπίζω ένα πρόβλημα και χρειάζομαι την βοηθεία σας. Τρέχω ένα site σε Joomla 3 και λόγω αυξημένης κίνησης θέλω να το μεταφέρω σε νέο σέρβερ. Το πρόβλημα που αντιμετωπίζω είναι το εξής. Η mysql του site λέει οτι είναι 1 GB +.... και ενώ κάνω backup ολόκληρη την βάση μου αποθηκεύει μόνο τα 500mb. Το backup το κάνω:1) Σύνδεση στο plesk2)Επιλογή βάσης3)Μαρκάρω ΟΛΑ τα tables και πατάω εξαγωγή.Για πιο λόγο μου αποθηκευει μόνο την μισή βάση. Ξέρεις κανείς τι συμβαίνει;;Ευχαριστώ εκ των προτέρων!!
lion2486 Δημοσ. 13 Οκτωβρίου 2013 Δημοσ. 13 Οκτωβρίου 2013 μπορεί να έχει κανένα περιορισμό.. γιατί δεν δοκιμάζεις να το κάνεις μόνος σου; Θα μπορούσες να καλέσεις αυτό το αρχείο: <?php backup_tables('localhost','user','pass','db_name'); /* backup the db OR just a table */ function backup_tables($host,$user,$pass,$name,$tables = '*') { $link = mysql_connect($host,$user,$pass); mysql_select_db($name,$link); //get all of the tables if($tables == '*') { $tables = array(); $result = mysql_query('SHOW TABLES'); while($row = mysql_fetch_row($result)) { $tables[] = $row[0]; } } else { $tables = is_array($tables) ? $tables : explode(',',$tables); } //cycle through foreach($tables as $table) { $result = mysql_query('SELECT * FROM '.$table); $num_fields = mysql_num_fields($result); $return.= 'DROP TABLE '.$table.';'; $row2 = mysql_fetch_row(mysql_query('SHOW CREATE TABLE '.$table)); $return.= "\n\n".$row2[1].";\n\n"; for ($i = 0; $i < $num_fields; $i++) { while($row = mysql_fetch_row($result)) { $return.= 'INSERT INTO '.$table.' VALUES('; for($j=0; $j<$num_fields; $j++) { $row[$j] = addslashes($row[$j]); $row[$j] = ereg_replace("\n","\\n",$row[$j]); if (isset($row[$j])) { $return.= '"'.$row[$j].'"' ; } else { $return.= '""'; } if ($j<($num_fields-1)) { $return.= ','; } } $return.= ");\n"; } } $return.="\n\n\n"; } //save file $handle = fopen('db-backup-'.time().'-'.(md5(implode(',',$tables))).'.sql','w+'); fwrite($handle,$return); fclose($handle); } ?>
doodlemat Δημοσ. 13 Οκτωβρίου 2013 Μέλος Δημοσ. 13 Οκτωβρίου 2013 Δηλαδή να φτιάξω ένα php άρχειο, με τον παραπάνω κώδικα και εν συνεχεία να τον καλέσω μέσω sql; Κατάλαβα καλά; Αν ναι, θα μπορούσες να μου εξηγήσεις πως θα το καλέσω μέσω sql ή τον τρόπο, μιας και δεν το έχω ξανά κάνει;
lion2486 Δημοσ. 13 Οκτωβρίου 2013 Δημοσ. 13 Οκτωβρίου 2013 θα βάλεις στην πρώτη σειρά τα στοιχεία της βάσης σου και όταν καλέσεις το αρχείο θα κάνει dump όλα τα tables σε ένα αρχείο, το κατεβάζεις με ftp και τέλος.
vacilis Δημοσ. 13 Οκτωβρίου 2013 Δημοσ. 13 Οκτωβρίου 2013 δοκιμασε το http://www.phpmybackuppro.net/ ή να μπεις απο το phpmyadmin και να κανεις export την database σου.
doodlemat Δημοσ. 13 Οκτωβρίου 2013 Μέλος Δημοσ. 13 Οκτωβρίου 2013 θα βάλεις στην πρώτη σειρά τα στοιχεία της βάσης σου και όταν καλέσεις το αρχείο θα κάνει dump όλα τα tables σε ένα αρχείο, το κατεβάζεις με ftp και τέλος. Έφτιαξα ένα αρχείο php με όνομα "test.php". Το ανέβασα στον φάκελο που είναι τα αρχεία του site και έτρεξα το site.gr/test.php . Αλλά μόνο errors δέχτηκα. Έκανα μαλακία; δοκιμασε το http://www.phpmybackuppro.net/ ή να μπεις απο το phpmyadmin και να κανεις export την database σου. Το πρώτο τι ακριβώς κάνει; Απο το phphmyadmin έκανα το export των tables και μου κατέβασε την μισή βάση!!!
lion2486 Δημοσ. 13 Οκτωβρίου 2013 Δημοσ. 13 Οκτωβρίου 2013 Έφτιαξα ένα αρχείο php με όνομα "test.php". Το ανέβασα στον φάκελο που είναι τα αρχεία του site και έτρεξα το site.gr/test.php . Αλλά μόνο errors δέχτηκα. Έκανα μαλακία; στο αρχείο στο σημείο backup_tables('localhost','user','pass','db_name'); έβαλες τα στοιχεία της βάσης σου; Τι errors βγάζει;
vacilis Δημοσ. 13 Οκτωβρίου 2013 Δημοσ. 13 Οκτωβρίου 2013 Το πρώτο τι ακριβώς κάνει; Απο το phphmyadmin έκανα το export των tables και μου κατέβασε την μισή βάση!!! Κανει backup όλης της βασης με php και στο στελνει με email ή στο αφηνει να το κατεβασεις directly.
doodlemat Δημοσ. 13 Οκτωβρίου 2013 Μέλος Δημοσ. 13 Οκτωβρίου 2013 στο αρχείο στο σημείο backup_tables('localhost','user','pass','db_name'); έβαλες τα στοιχεία της βάσης σου; Τι errors βγάζει; Την πρώτη φορά με το error ένα απο τα " " είχε ένα κενό και το πήρε σαν error. Μετά το ξανά πέρασα και απλά μου εμφάνιζε μια λευκή σελίδα. Το έκανα και σε άλλες σελίδες που είχα με πολύ μικρότερες βάσεις και λειτούργησε. Στην βάση όμως του 1GB δεν έκανε τίποτα. Μήπως χρειάζεται περισσότερο χρόνο, πρωτού το εμφανίσει; Κανει backup όλης της βασης με php και στο στελνει με email ή στο αφηνει να το κατεβασεις directly. Φίλε μου το δοκίμασα και σε άλλες σελίδες που έχω. Στις άλλες λειτούργησε, αλλά όπως είπα και στον προηγούμενο τρόπο με την php στην βάση του 1gb δεν έκανε δουλειά. Πιο συγκεκριμένα, στον δικό σου τρόπο μου έβγαλε και "internal server error"
poihths Δημοσ. 13 Οκτωβρίου 2013 Δημοσ. 13 Οκτωβρίου 2013 που την εχεις σηκωμενη τη βαση;μηπως σε περιοριζει ο provider?
doodlemat Δημοσ. 13 Οκτωβρίου 2013 Μέλος Δημοσ. 13 Οκτωβρίου 2013 Σε ένα VPS στην Γερμανία. Του έστειλα email και μου είπε οτι δεν υπάρχει περιορισμός απο τον σέρβερ. Δεν μπορώ να καταλάβω τι παίζει...
Sudavar Δημοσ. 13 Οκτωβρίου 2013 Δημοσ. 13 Οκτωβρίου 2013 Αφού είναι σε VPS συνδέσου με ssh, τρέξε mysqldump και βάλε το αρχείο σε ftp folder και κατέβασέ το. Στην βάση όμως του 1GB δεν έκανε τίποτα. Μήπως χρειάζεται περισσότερο χρόνο, πρωτού το εμφανίσει; Προφανώς και θα θέλει αρκετά περισσότερο χρόνο. Το αρχείο όμως απλά θα αποθηκευτεί στον φάκελο που έχεις το test.php, δεν θα σου πετάξει dialog για να το κατεβάσεις. Μετά θα θες λογικά πάλι ftp. BTW απορία, αν πχ για να δημιουργηθεί το backup θέλει να τρέχει το script 10 λεπτά, τότε όταν κάνει κάποιος ένα http request στο test.php και σε 20 δευτερόλεπτα κλείσει το tab, τι θα απογίνει η εκτέλεση του script? Θα τρέξει όλο ή θα διακοπεί όταν κλείσει το tab?
Uberalles_gr Δημοσ. 13 Οκτωβρίου 2013 Δημοσ. 13 Οκτωβρίου 2013 BTW απορία, αν πχ για να δημιουργηθεί το backup θέλει να τρέχει το script 10 λεπτά, τότε όταν κάνει κάποιος ένα http request στο test.php και σε 20 δευτερόλεπτα κλείσει το tab, τι θα απογίνει η εκτέλεση του script? Θα τρέξει όλο ή θα διακοπεί όταν κλείσει το tab? Θα τρέξει όλο μιας και ο server έχει δεχεί το request.
doodlemat Δημοσ. 14 Οκτωβρίου 2013 Μέλος Δημοσ. 14 Οκτωβρίου 2013 Αφού είναι σε VPS συνδέσου με ssh, τρέξε mysqldump και βάλε το αρχείο σε ftp folder και κατέβασέ το. Προφανώς και θα θέλει αρκετά περισσότερο χρόνο. Το αρχείο όμως απλά θα αποθηκευτεί στον φάκελο που έχεις το test.php, δεν θα σου πετάξει dialog για να το κατεβάσεις. Μετά θα θες λογικά πάλι ftp. Αυτό πως ακριβώς μπορώ να το κάνω; Δεν το έχω ξανά ακούσει. Και επίσης, γιατί εφαρμόζεται μόνο σε VPS αυτός ο τρόπος; Σε dedicated server δεν ισχύει;
Gigenis Δημοσ. 14 Οκτωβρίου 2013 Δημοσ. 14 Οκτωβρίου 2013 Στο PhpMyAdmin επέλεξε gzip και αποθήκευση σε φάκελο... μετά το κατεβάζει με ftp
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα