Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [mysql, sqlite] ktora baza lepsza?
Forum PHP.pl > Forum > Przedszkole
Gość_ziom_*
jak w temacie... chce stworzyc strone i zastanawiam sie nad tym ktora z tych dwoch baz jest lepsza mysql czy sqlite ?
i tutaj drugie pytanie.. jakie sa roznice miedzy tymi bazami?
hwao
...

Takie ze w PHP5 jest tylko Sqlite...
SqLite posiada bardziej zaawansowane mechanizmy od mysql (to jeszcze zalezy ktora wersja..)
Pozatym nie powinno sie porownywac tych dwóch baz poniewaz zostały stwozone do innych celów.

Wybor nalezy do Ciebie, w czym Ci bedzie lepiej i co posiadasz...
Gość
jednakze ze obie bazy przechowuja dane.. jedna na jakims serwerze a druga na serwerze z nasza strona www, jako jeden plik zagniezdzony pomiedzy innymi:]
hwao
Cytat(Gość @ 12.06.2006, 15:07 ) *
jednakze ze obie bazy przechowuja dane.. jedna na jakims serwerze a druga na serwerze z nasza strona www, jako jeden plik zagniezdzony pomiedzy innymi:]

To najmniej wazna sprawa jak by nie patrzec na bezpiecznestwo (trzeba pamietac zeby ktos "przypadkiem" nie sciagna nam całej bazy smile.gif )

SqLite zostało napisane poto zeby zastapic operacja na plikach w php5 (poco sie z nmi bawic jak jest SqLite) co nie znaczy ze nie mozna na niej napisac wiekszych rzeczy smile.gif z drugiej strony trzeba uwazac zeby nie przesadzic.. poniewaz potem moze sie okazac ze lepiej bylo uzyc mysql (przy prostych skladniach SQL to naprawde nie ma znaczenia, kiedys sam napisalem silnik ktory dzialal na sqlite i mysql bez problemu smile.gif
Gość_andi_*
czy to oznacza, ze przechowywanie hasel w sqlite nie jest zalecane:>?
erix
'Surowych' hasel na pewno nie - ktos sciagnie plik i przeczyta hasla.

Gdy ich sumy kontrolne, to juz co innego.

Ale gdy masz oba typy baz do dyspozycji i liczysz na wydajnosc - MySQL.
mariuszn3
Cytat(hwao @ 12.06.2006, 12:56 ) *
Takie ze w PHP5 jest tylko Sqlite...

.. nie bardzo rozumiem(?) a rozszerzenia mysql i mysqli ?
hwao
chodzilo ze w php4 nie ma (standartowo w php5).

Mozesz bez problemu hasla przechowywac tak jak w kazdej innej bazie danych, tyle ze musisz odpowiednio zabezpieczyc plik. Trzymac go poza html_public lub jak tez nie masz to pod odpowiednim accessem ustawionym w .htaccess
DEXTER_c
Tak w sumie to jakie są szanse na ściągnięcie bazy SQLite? Z Windowsem to nigdy nic nie wiadomo, ale w Linuksie? Jest jakiś bat na odpowiedni chmod? Można się zawsze włamać przez ftp... ale równie dobrze można sie włamać do MySQL.

Poza tym mam jeszcze jedno małe pytanie. Jest jakiś silnik umożliwiający napisanie aplikacji działającej w sposób uniwersalny albo z MySQL, albo z SQLite?
Ludvik
Jakie są szanse? Trzeba mieć dostęp do pliku. Kiedy ten umieścimy poza public_html albo w katalogu niedostępnym z poziomu serwera http (.htaccess i te sprawy), "włamywacz" musi się dostać na nasze konto. Do bazy MySQL nie włamie się z zewnątrz raczej, bo administratorzy zwykle zastrzegają dostęp do bazy z lokalnej maszyny, więc z zewnątrz trudno jest się połączyć.

Czy przechowywanie haseł jest bezpiecznie? Samych haseł jest zawsze tak samo niebezpieczne, bo kwestią ich odzyskania jest użycie konkretnego narzędzia. W bazach/plikach trzyma się hashe, które co najwyżej możesz złamać słownikiem albo metodą "brute force". Do haseł najlepiej używać sha1 - algorytm ten sam, ale hash o 1/4 mocniejszy.

Dexter_c: W php 5.1 masz obsługę PDO (w 5.0.x trzeba instalować rozszerzenie z pecl). Poza tym zawsze można samemu napisać prosty system abstrakcji danych.
DEXTER_c
Cytat(Ludvik @ 2.07.2006, 09:41 ) *
Jakie są szanse? Trzeba mieć dostęp do pliku. Kiedy ten umieścimy poza public_html albo w katalogu niedostępnym z poziomu serwera http (.htaccess i te sprawy), "włamywacz" musi się dostać na nasze konto.


Jak już jesteś na koncie, to wystarczy podejrzeć hasełko w configu PhpMyAdmin - moim zdaniem nadal na jedno wychodzi. Nie widzę tu jakiejś znaczącej różnicy w bezpieczeństwie.
Ludvik
Zauważ, że jeżeli zapomnisz o zabezpieczeniu pliku z hasłem do bazy danych, a na koncie masz już inne hasło, to baza pozostanie raczej "bezpieczna", jeżeli włamywacz nie podłączy się z localhosta.
siemakuba
Cytat(DEXTER_c @ 3.07.2006, 11:50 ) *
Jak już jesteś na koncie, to wystarczy podejrzeć hasełko w configu PhpMyAdmin

jeżeli trzymasz hasło w configu phpmyadmina wpisane na sztywno, to chyba nie trzeba nawet na konto sie dostac a wystarczy znac adres pod ktorym dziala u ciebie PMA...

pozdr.
DEXTER_c
Cytat(Ludvik @ 2.07.2006, 09:41 ) *
Dexter_c: W php 5.1 masz obsługę PDO (w 5.0.x trzeba instalować rozszerzenie z pecl). Poza tym zawsze można samemu napisać prosty system abstrakcji danych.


Niestety, php 5.1 nie ma na serwerach. Jeszcze nigdy nie korzystałem z rozszerzeń. Bibliotekę PECL będę mógł zostosować za pomocą include, czy konieczna będzie ingerencja administratora serwera?
Ludvik
Zależy na jakich serwerach... Znajdą się takie, które obsługują. Rozszerzeń z PECL nie załadujesz include. Co najwyżej dl(), ale na normalnym serwerze nie uda Ci się tego zrobić.
DEXTER_c
Generalnie to w mojej aplikacji będą tylko 3 tryby: MySQL, SQLite oraz MySQL+SQLite. Zapytania są bardzo podobne, więc najrozsądniej będzie chyba napisać 3 osobne biblioteki do obsługi baz danych. No chyba, że ktoś ma jeszcze jakiś lepszy pomysł?
Cysiaczek
Ja mam biggrin.gif
Nazywa się PEAR:: DB
I juz nie masz kłopotu smile.gif, zwłaszcza, że piszesz o prostych konstrukcjach cool.gif
DEXTER_c
Czy PEAR:biggrin.gifB o którym piszesz jest standardowym elementem php 5.0?

Mam dodatkowe pytanie trochę z innej strony: czy sam język zapytań w MySQL i SQLite się czymkolwiek różni?
Ludvik
Na pewno znajdziesz różnice... Różnią się typy danych, przy zaawansowanyc zapytaniach mogą być różnice. Nie wszystkie funkcje MySQL są zaimplementowane w SQLite. Jeżeli będziesz się trzymał standardu SQL, to zmniejszysz szanse trafienia na taki wypadek smile.gif

Pakiety peara nie są standardowym elementem, ale możesz je spokojnie pobrać, bo kod jest pisany w php.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.