large files

Συζητήσεις για την βάση δεδομένων MySQL και το phpMyAdmin

Συντονιστές: WebDev Moderators, Super-Moderators

Απάντηση
Fouli_B
Δημοσιεύσεις: 271
Εγγραφή: 10 Ιαν 2004 12:23
Τοποθεσία: θεσσαλονίκη
Επικοινωνία:

large files

Δημοσίευση από Fouli_B » 06 Ιούλ 2008 00:25

Γεια σας παιδιά, ζητώ συγνώμη αν έχει απαντηθεί το θέμα, αλλά δε βρήκα κάτι.
Πως γίνεται να μεταφέρουμε μεγάλο αρχείο .sql? προσπαθώ μέσω του phpmyadmin να μεταφέρω τη βάση της σελίδας μου τοπικά στον υπολογιστή μου και λαμβάνω ένα μήνυμα σχετικά με 300 seconds. Το αρχείο είναι περίπου 700kb και οι πίνακες 145.
Θα μπορούσε να με βοηθήσει κάποιος;
Ευχαριστώ εκ των προτέρων
Εικόνα

Άβαταρ μέλους
dik_
Δημοσιεύσεις: 476
Εγγραφή: 07 Ιουν 2007 11:28

large files

Δημοσίευση από dik_ » 06 Ιούλ 2008 01:07

700k δεν είναι μεγάλο πάντως. Export προσπαθείς να κάνεις; Το zip-άρεις;

Fouli_B
Δημοσιεύσεις: 271
Εγγραφή: 10 Ιαν 2004 12:23
Τοποθεσία: θεσσαλονίκη
Επικοινωνία:

large files

Δημοσίευση από Fouli_B » 06 Ιούλ 2008 01:12

Όχι, την εξαγωγή την καταφέρνω από το πάνελ στην σελίδα μου, εισαγωή δε μπορώ να κάνω μέσω του phpmyadmin στο xampp. Ναι είναι μεγάλο αρχείο, όταν κάνω εξαγωγή διαλέγω ζιπ.
Εικόνα

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6231
Εγγραφή: 30 Νοέμ 2004 03:09

large files

Δημοσίευση από fafos » 06 Ιούλ 2008 03:06

prospathise auto:

anoikse to arxeio \apache\bin\php.ini me kapoion keimenografo kai allakse auta:

max_execution_time = 6000 ; Maximum execution time of each script, in seconds
max_input_time = 6000 ; Maximum amount of time each script may spend parsing request data
memory_limit = 320M ; Maximum amount of memory a script may consume (16MB)

mysql.connect_timeout = -1


sose to arxeio kai epanekinhse ton apache...

Fouli_B
Δημοσιεύσεις: 271
Εγγραφή: 10 Ιαν 2004 12:23
Τοποθεσία: θεσσαλονίκη
Επικοινωνία:

large files

Δημοσίευση από Fouli_B » 06 Ιούλ 2008 12:38

καλημέρα fafos, σε ευχαριστώ για την απάντηση αλλά βγάζει πάλι αυτό:

Fatal error: Maximum execution time of 300 seconds exceeded in E:\xampp\phpMyAdmin\libraries\import\sql.php on line 129
Εικόνα

Άβαταρ μέλους
dik_
Δημοσιεύσεις: 476
Εγγραφή: 07 Ιουν 2007 11:28

large files

Δημοσίευση από dik_ » 06 Ιούλ 2008 13:20

Τρέξε τα queries χειροκίνητα λίγα-λίγα, π.χ. 100-500 τη φορά. Ή ψάξε για το big dump που κάνει πολύ καλή δουλειά...

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6231
Εγγραφή: 30 Νοέμ 2004 03:09

large files

Δημοσίευση από fafos » 06 Ιούλ 2008 14:42

Fouli_B έγραψε:καλημέρα fafos, σε ευχαριστώ για την απάντηση αλλά βγάζει πάλι αυτό:

Fatal error: Maximum execution time of 300 seconds exceeded in E:\xampp\phpMyAdmin\libraries\import\sql.php on line 129
Ekanes epanekinhsh tou xampp otan ekanes tis allages?

Fouli_B
Δημοσιεύσεις: 271
Εγγραφή: 10 Ιαν 2004 12:23
Τοποθεσία: θεσσαλονίκη
Επικοινωνία:

large files

Δημοσίευση από Fouli_B » 06 Ιούλ 2008 17:03

ναι έχω κάνει και επανεκκίνηση. φτιάχνει μια βάση με 18 πίνακες και μετά βγάζει το λάθος. αυτό το έκανε και πριν.
δοκίμασα και το bigdump,κάνει πάρα πολύ ώρα και στο τέλος βγάζει ότι ο ΙΕ δεν μπορει να εμφανίσει την σελίδα
Εικόνα

Άβαταρ μέλους
soteres2002
S. & H. Moderator
Δημοσιεύσεις: 1524
Εγγραφή: 05 Μαρ 2004 22:17
Τοποθεσία: Ιωάννινα

large files

Δημοσίευση από soteres2002 » 07 Ιούλ 2008 04:23

Δοκίμασε να κατεβάσεις το SQL αρχείο ατόφιο χωρίς συμπίεση, καθώς αυτή δημιουργεί καθυστέρηση.

Fouli_B
Δημοσιεύσεις: 271
Εγγραφή: 10 Ιαν 2004 12:23
Τοποθεσία: θεσσαλονίκη
Επικοινωνία:

large files

Δημοσίευση από Fouli_B » 08 Ιούλ 2008 19:00

γειά σου soteres2002,

με χωρίς συμπίεση έβγαζε το ίδιο λάθος, ενώ το bigdump έβρισκε λάθη σύνταξης. Επειδή ο localhost είχε γίνει πολύ αργός γενικά, εγκατέστησα το xampp στο δεύτερο διαμέρισμα του δίσκου που έχω, και πήρα αυτά τα μηνύματα:
Script timeout passed, if you want to finish import, please resubmit same file and import will resume

Previous import timed out, after resubmitting will continue from position 586833.

και σιγά να μην έκανε resume έβγαζε πάλι αυτό:

D:\xampp\phpMyAdmin\libraries\import\sql.php on line 129
Εικόνα

Άβαταρ μέλους
soteres2002
S. & H. Moderator
Δημοσιεύσεις: 1524
Εγγραφή: 05 Μαρ 2004 22:17
Τοποθεσία: Ιωάννινα

large files

Δημοσίευση από soteres2002 » 08 Ιούλ 2008 21:35

Fouli_B έγραψε:γειά σου soteres2002,
με χωρίς συμπίεση έβγαζε το ίδιο λάθος, ενώ το bigdump έβρισκε λάθη σύνταξης. Επειδή ο localhost είχε γίνει πολύ αργός γενικά, εγκατέστησα το xampp στο δεύτερο διαμέρισμα του δίσκου που έχω, και πήρα αυτά τα μηνύματα:
Script timeout passed, if you want to finish import, please resubmit same file and import will resume Previous import timed out, after resubmitting will continue from position 586833.
Η συμπίεση προσθέτει κάποιο χρόνο έστω και αμεληταίο και μη αισθητό από το χρήστη, για μεγάλες ροές αυτό προφανώς το καταλαβαίνει ο χρήστης (καθυστέρηση). Αυτό που θα σου συνιστούσα να κάνεις είναι να κατεβάσεις την τελευταία έκδοση του phpMyAdmin από το http://www.phpmyadmin.net/, να αποσυμπιέσεις το tarball (ή αναλόγως ό,τι κατέβασες), να αλλάξεις απλά τον κωδικό του root στο config.php. Επίσης, εφόσον πρόκειται να ανεβοκατεβάζεις μεγάλα αρχεία πρέπει στο php.ini σου (αν έχεις ηδη πειράξει το php.ini σου και δεν βλέπεις καμία διαφορά, μπορεί και να τροποποίησες το λάθος php.ini, συνήθως γράφεται ένα στον κατάλογο εγκατάστασης και ένα στο WINDOWS system folder), χρειάζεσαι να αυξμοιώσεις κατάλληλα τις ντιρεκτίβες max execution time, max file upload (η τελευταία είναι συνήθως 2, 3 ή 5 ΜΒ) και με τις οποίες μπορείς να δουλέψεις μεγάλες τιμές μιας και μιλάμε και πειραματικό/dev σύστημα και όχι παραγωγής. Επίσης, κάτι ακόμα που ίσως χρειαστείς (μάλλον χρειάζεται) είναι να δώσεις περισσότερο χρόνο στα requests από τον webserver (apache). Αυτό γίνεται τροποποιώντας την τιμή της ντιρεκτίβας Timeout (πχ Timeout 300), όπου εσύ θα δοκιμάσεις μια αρκετά μεγάλη τιμή (και 1000 αν βάλεις δεν σε χαλάει).

Όσον αφορά την αργοπορία του σέρβερ, δεν ευθύνεται το ίδιο το service webserver, εκτός κι αν έχεις προσθέσει επεκτάσεις που απαιτούν πολύ μεγάλο χώρο μνήμης και CPU. Διαφορετικά, αυτό που δημιουργεί το πρόβλημα είναι σε επίπεδο λειτουργικού, πχ αν τρέχεις πολλά (μερικές φορές άχρηστες διεργασίες) που τρώνε τσάμπα και βερεσέ χρόνο από επεξεργαστή. Αν είναι έτσι, πρέπει να επιλέξεις και να τερματίσεις κάποιες από αυτές.
D:\xampp\phpMyAdmin\libraries\import\sql.php on line 129
Εδώ δεν περιγράφεις όλο το μήνυμα. Μάλλον σπάνιο η ΡΗΡ να δώσει μόνο αυτό το μήνυμα χωρίς περιγραφή. Τι ακριβώς σημαίνει αυτό;;

Fouli_B
Δημοσιεύσεις: 271
Εγγραφή: 10 Ιαν 2004 12:23
Τοποθεσία: θεσσαλονίκη
Επικοινωνία:

large files

Δημοσίευση από Fouli_B » 10 Ιούλ 2008 01:43

ουπς, ναι το λάθος ήταν έτσι:
Fatal error: Maximum execution time of 300 seconds exceeded in
D:\xampp\phpMyAdmin\libraries\import\sql.php on line 129 .

όμως παρόλο που πείραξα 3 php.ini, ένα στον φάκελο apache, στο φάκελο php και στον φάκελο php4 (το xampp δεν πρεπει να τοποθετει αρχείο στα windows, γιατί δεν το βρίσκω )
το λάθος είναι το ίδιο:

Fatal error: Maximum execution time of 300 seconds exceeded in D:\xampp\htdocs\pma\libraries\import\sql.php on line 121
εδώ φαίνεται που άλλαξα και το phpmyadmin σε pma την τελευταία έκδοση 2.11.7.

μέχρι στιγμής έχω δημιουργήσει ένα μέρος της βάσης μεταφέροντας κάθε φορά μερικούς πίνακες, όπως είπε και ο dik_
Εικόνα

Άβαταρ μέλους
soteres2002
S. & H. Moderator
Δημοσιεύσεις: 1524
Εγγραφή: 05 Μαρ 2004 22:17
Τοποθεσία: Ιωάννινα

large files

Δημοσίευση από soteres2002 » 10 Ιούλ 2008 03:36

Fouli_B έγραψε: Fatal error: Maximum execution time of 300 seconds exceeded in D:\xampp\htdocs\pma\libraries\import\sql.php on line 121
Άνοιξε το config.inc.php. Εκεί μέσα υπάρχει μια ανάθεση στην "$cfg['ExecTimeLimit']" χωρίς τα "". Ψάξε μέσα στο έγγραφο με notepad για "$cfg['ExecTimeLimit']". Σύμφωνα με το λάθος αν λαμβάνεται υπόψην η τιμη που έχει ήδη η μεταβλητή αυτή, πρέπει να είναι = 300. Εσύ αντικατέστησε το 300 με 0, που σημαίνει να μην μπεί χρονικό όριο εκτέλεσης. Μετά σώσε το έγγραφο και ξαναδοκίμασε με τον browser σου (φρόντισε να καθαρίσεις την cache, για να μην παραπλανηθείς). Λογικά και εφόσον έχεις ήδη αλλάξει τις τιμές στα php.ini σύμφωνα με όσα προηγήθηκαν (μπορεί το όριο να ορίζεται μόνο στο php.ini δλδ να είναι directive τύπου system και όχι τροποποήσιμό από χρήστη-εφαρμογή) θα πρέπει να δουλέψει κανονικά.

Επίσης υπάρχουν και άλλοι μέθοδοι να μην επιβάλλεις χρονικό όριο ή να ορίζεις την προτεραιότητα για το όριο (δλδ πρώτα η ΡΗΡ ή μια εφαρμογή να αλλάζει την μεταβλητή ή να είναι σταθερή και οριζόμενη από το διαχειριστή μόνο μέσω php.ini) (πχ μέσω Apache με .htaccess)), αλλά αυτό θα γίνει μόνο αν έχεις ακόμα πρόβλημα (που μάλλον αποκλείεται να έχεις) :wink: .

Fouli_B
Δημοσιεύσεις: 271
Εγγραφή: 10 Ιαν 2004 12:23
Τοποθεσία: θεσσαλονίκη
Επικοινωνία:

large files

Δημοσίευση από Fouli_B » 10 Ιούλ 2008 14:33

Εύγε soteres2002 αυτό ήταν! :pint:
Η μεταβλητή "$cfg['ExecTimeLimit']" είναι στο config.defaut.php στην διαδρομή D:\xampp\htdocs\pma\libraries. Στο config.inc.php του pma δεν ύπάρχει.
Να ρωτήσω κάτι άλλο: τι είναι καλύτερο για ένα σάιτ με φόρουμ, να εμπεριέχονται οι πίνακες του φόρουμ στην ίδια βάση με το joomla ή να υπάρχει ξεχωριστή βάση γιαυτό;
Εικόνα

Άβαταρ μέλους
soteres2002
S. & H. Moderator
Δημοσιεύσεις: 1524
Εγγραφή: 05 Μαρ 2004 22:17
Τοποθεσία: Ιωάννινα

large files

Δημοσίευση από soteres2002 » 10 Ιούλ 2008 15:19

Το να συγχωνεύσεις 2 βάσεις δεδομένων σε 1 δεν εμπεριέχει κανέναν κίνδυνο, εφόσον οι πλέον γνωστές εφαρμογές φόρα και διαχείρησης περιεχομένου σέβονται το χρήστη υπό την έννοια ότι σου λένε αν θέλεις να βάλεις ένα πρόθεμα πριν από κάθε πίνακα καθώς και εσωτερικά γίνονται οι απαραίτητοι έλεγχοι για πανωγράψιμο ή κατα λάθος διαγραφή πινάκων. Έτσι πχ άν έχεις phpbb και joomla μπορείς να βάλεις αντίστοιχα προθέματα για τους πίνακες της κάθε βάσης δεδομένων, και αυτό αποτελεί ένα καλό εργαλείο για να μην μπερδεύεις εσύ τους πίνακες (who is who) άν χώνεσαι με την βάση δεδομένων, αυτό βοηθάει και αυτούς που γράφουν κώδικα καθώς δεν μπορείς να θυμάσαι πάντα ποιος πίνακας αντιστοιχεί που και μπορεί να κάνεις πατάτα.

Άρα είναι καθαρά δικό σου θέμα αυτό. Για λόγους απλότητας καλό είναι να φτιάχνεις ξεχωριστές βάσεις δεδομένων. Αν είσαι σε shared hosting είναι καλός λόγος να συγχωνεύσεις 2 βάσεις δεδομένων σε 1.

Απάντηση

Επιστροφή στο “MySQL”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 3 επισκέπτες