Δημοσιεύτηκε: 12 Φεβ 2012, 03:54
Ilias95 έγραψε:
Πριν κάνεις edit το post σου διάβασα ότι η sqlite συγκεκριμένα κρατάει την βάση σε ένα αρχείο. Οι υπόλοιπες πως λειτουργούν;
Εννοούσα πως το sqlite δημιουργεί ένα μόνο αρχείο το οποίο μπορείς να κάνεις copy-paste εύκολα και οπουδήποτε.
Η mysql πρέπει να γίνει compile και αποτελείται από ένα ολόκληρο σύστημα αρχείων. Δε θυμάμαι πού ακριβώς βρίσκονται τα αρχεία με τις βάσεις δεδομένων, υπολογίζω πως πρέπει να είναι στο /var/lib/mysql/
Ilias95 έγραψε:Δεν νομίζω ότι δεν μπορεί να γίνει αλλιώς και με sqlite.
Ναι αλλά αν τα άλλα άτομα μπορούν να βλέπουν τα αρχεία των άλλων χωρίς περιορισμούς, είναι security vulnerability.
Η sqlite δεν έχει GRANT/REVOKE εντολές, δεν μπορείς να πεις στη βάση δεδομένων "δώσε/μην δώσεις προνόμια στον τάδε χρήστη για να διαβάσει τα τάδε στοιχεία". Έχει δημιουργηθεί επίτηδες έτσι, γι' αυτό και είναι ~600kb βιβλιοθήκη.
MySQL vs SQLite:
http://stackoverflow.com/questions/3630/sqlite-vs-mysql
http://www.sqlite.org/whentouse.html
..Και ορίστε ακόμη 2 ΒΔ, εδώ εμφανίζει τι υποστηρίζουν και τι όχι:
http://database-management-systems.find ... -vs-SQLite
http://database-management-systems.find ... PostgreSQL
http://wiki.python.org/moin/Firebird
έγραψε:Λογικά σε περιπτώσεις που μιλάμε για τεράστιους όγκους δεδομένων η πρώτη λύση θα είναι πιο γρήγορη;
Η sqlite δεν φτιάχτηκε για μια ογκώδης βάση δεδομένων. Δεν ξέρω ακριβώς το όριο, αλλά σίγουρα θα αρχίσει να καταναλώνει αρκετή μνήμη η sqlite μετά από κάποιο βαθμό. Η sqlite φτιάχθηκε με σκοπό την ευκολία διαχείρισης και όσο γίνεται πιο μικρό μέγεθος. php/python/c/c++ + sqlite είναι απίθανος συνδυασμός.
Αν μιλάμε για ιστοσελίδα με high bandwidth/volume, τότε θες ένα server για τη βάση δεδομένων κι ένα server για την ιστοσελίδα.