[Solved] Κόλλημα του phpmyadmin

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

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

Απάντηση
lakritidis
Δημοσιεύσεις: 401
Εγγραφή: 04 Αύγ 2005 14:35
Τοποθεσία: Katerini
Επικοινωνία:

[Solved] Κόλλημα του phpmyadmin

Δημοσίευση από lakritidis » 29 Αύγ 2005 21:00

Έχω φτιάξει ένα πρόγραμμα σε cobol που μετατρέπει μια βαση δεδομένων rm/cobol σε mysql.
Αφού σαρώνω όλες τις εγγραφές της βάσης, δημιουργώ εντολές του τύπου insert into table_test (var1,var2,.....) values (string1,string2,....) για κάθε εγγραφή.

Οι εντολές αυτές αποθηκεύονται σε ένα txt αρχείο.
Ενώ όμως για μικρό αριθμό εγγραφών (έως 1000) εκτελώ κανονικά τις εντολές του αρχείου από το phpmyadmin, για μεγάλο αριθμό εγγραφών (6000) η phpmyadmin κολλάει και δεν εκτελεί τις εντολές του αρχείου (εχω p4 3,4ghz).

Υπάρχει κάποιος άλλος τρόπος έξω από την phpmyadmin για να εκτελέσω αυτές τις 6000 εντολές σε μία βάση πχ db_test?

Άβαταρ μέλους
mrpc
WebDev Moderator
Δημοσιεύσεις: 3393
Εγγραφή: 03 Μάιος 2000 03:00
Τοποθεσία: Εξάρχεια
Επικοινωνία:

[Solved] Κόλλημα του phpmyadmin

Δημοσίευση από mrpc » 29 Αύγ 2005 21:05

Μέσω shell μπορείς.
mysql -u username -ppassword dbtest < file.txt αν θυμάμαι καλά.

lakritidis
Δημοσιεύσεις: 401
Εγγραφή: 04 Αύγ 2005 14:35
Τοποθεσία: Katerini
Επικοινωνία:

[Solved] Κόλλημα του phpmyadmin

Δημοσίευση από lakritidis » 31 Αύγ 2005 21:56

Δοκίμασα αυτό που μου είπες και δούλεψε για 2500 εγγραφές. Αλλά για 6000 εγγραφές μου έβγαζε
MySQL server has gone away.
Προφανώς εξαντλούνται τα όρια κάποιου timeout.
Anyway, έλυσα το πρόβλημα ως εξής:
Αντι για:
insert into table_test (var1, var2, ...) values
(record1_var1, record1_var2, ....),
(record2_var1, record2_var2, ....),
(record3_var1, record3_var2, ....),
.
.
.
(record6000_var1, record6000_var2, ....);

χρησιμοποιώ σπαστές insert εντολές ως εξής:
insert into table_test (var1, var2, ...) values (record1_var1, record1_var2, ....);
insert into table_test (var1, var2, ...) values (record2_var1, record2_var2, ....);
insert into table_test (var1, var2, ...) values (record3_var1, record3_var2, ....);
.
.
.
insert into table_test (var1, var2, ...) values (record6000_var1, record6000_var2, ....);


Δουλεύει κανονικά.

Άβαταρ μέλους
cordis
Administrator, [F|H]ounder, [C|S]EO
Δημοσιεύσεις: 27616
Εγγραφή: 09 Οκτ 1999 03:00
Τοποθεσία: Greece
Επικοινωνία:

[Solved] Κόλλημα του phpmyadmin

Δημοσίευση από cordis » 01 Σεπ 2005 13:21

δες από εδώ και κάτω..

θέλει και την παράμετρο -q
Δεν απαντάω σε προσωπικά μηνύματα με ερωτήσεις που καλύπτονται από τις ενότητες του forum. Για ο,τι άλλο είμαι εδώ για εσάς.
- follow me @twitter

Απάντηση

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

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

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