Baza zdalna w Delphi, który rodzaj?

0

Witam.
Jaką polecacie bazę i komponenty do wykonania aplikacji bazodanowej zdalnej do firmy, na 3 miasta?

Musze wykonać projekt i mam założone kryteria:

  1. Baza darmowa
  2. Bez ograniczeń
  3. Łatwa do instalacji/przenoszenia

Jestem kompletnym laikiem jeśli chodzi o tworzenie bazy zdalnej i będę to robił pierwszy raz w życiu.
Dotąd tworzyłem prostą lokalną bazkę w Firebird za pomocą IBExpert Personal na jeden komputer z komponentami IBX w Delphi i było OK.

Teraz przyszło mi zrobić bazę na przynajmniej 3 komputery w 3 różnych miastach.
W Delphi programuję dosyć dobrze, SQL język znam dobrze, tylko nie wiem co wybrać i jak się za to wziąć.

  • MSSQL
  • MySQL
  • FireBird
    czy coś innego?

W domu łączę się przez router, mam IP zmienne, ale program będe testował na IP lokalnym 127.0.0.1.
Jakieś wskazówki na start? I jaką bazę wybrać i komponenty w Delphi 7?

0

Generalnie, jak dla firmy, to zapewne posiada on stronę www, jak posiada, to ktoś świadczy jej usługi serwera, jak świadczy, to zapewne też jakąś bazkę danych na podorędziu posiada, jak posiada, to już blisko do wyboru upragnionego rozwiązania.

0

No jakiś tam hosting jest wykupiony, ja tego nie robiłem tam.

Generalnie chodzi mi w celach prywatnych jak zacząć tworzyć bazę danych zdalną.
Próbuję coś z MySQL, zainstalowałem Krasnala i na dzień dobry mam problem z logowaniem do serwera.
Zaczyna mnie to wk* już.
Zastanawiam się jak zrobić bazę zdalną (remote) w Firebird, bo lokalną umiem.

A można robić bazy na socketach? ClientSocket i ServerSocket.
Kiedyś zrobiłem sobie prosty czat na tym, ale nie wiem jak wysłać text z 2 Editów z klienta, przez te sockety tak aby odpowiednio były odczytane w 2 Editach w serwerze

0

jezeli masz hosting to zapewne masz tez bazę mysql moze też postgrsql obie darmowe wiec problemu nie ma.
w czym masz proble z połączeniem z mysql?? ja do tego celu polecam komponenty zeos.

0

jezeli masz hosting to zapewne masz tez bazę mysql moze też postgrsql obie darmowe wiec problemu nie ma.

Pewnie tam jest baza.
Dobra wyjaśnię to łopatologicznie bo w tej zdalnej kwestii jestem tępy:
Jak wykonam jakimś cudem plik z bazą MySQL to ten plik wgrywam jakoś do tej bazy w hostingu czy po prostu tam bezpośrednio tworzę bazy, tabele itd?
Chodzi o to aby wykonać w Delphi program który będzie mi obsługiwał baze na serwerze z podstawowymi operacjami.
Program będzie w 3 miastach.

Jeju, siedzę od soboty i szukam coś sensownego na necie jak zrobić wszystko od A do Z. A tu jak coś jest płatne, tak coś jest damowe ale z ograniczeniami. Nie mówię o wyjasnieniu krok po kroku łopatologicznie.

Jesli chodzi o logowanie to chciałem zrobić od początku do końca bazę z tego artykułu: MySQL w Delphi

Wpisuję w odpowieniej ścieżce mysql -u root -p i teraz nie wiem jakie hasło podać. Wpisywałem root lub Admin i mam błąd 1056: Access denied for user@localhost <Using password: TAK>.

Ten koleś co pisał tego arta to mógł chociaż podać o jakie hasło chodzi lub jakie ono jest.

0

Zależy, co to będzie za aplikacja. Jeśli jakaś naprawdę duża, to nawet nie baw się w MySQL. Hosting innych baz jest płatny.

Takie rzeczy: darmowa, bez ograniczen i zajebista to tylko w Erze. Proponowałbym Firebirda(którego osbiście nie za bardzo lubię), ale nie ma chyba darmowych narzędzi do niego. MSSQL w wersji Express jest darmowy, ale ma ograniczenia. M.in. rozmiar bazy danych do 4GB, ale zawsze jak coś można zrobić jakiś mechanizm archiwizacji. Poza tym jest maksymalna ilość połączeń do jednej bazy w danym momencie. Nie pamiętam teraz, ile to jest.

0

Nie, to nie będzie baza wielka. Max 5 tys. wierszy i zdecydowałem się na Firebird z darmowym narzędziem IBExpert Personal do tworzenia baz. :)

Czyli taka mała baza zdalna na 3 pracowników, każdy w swoim mieście, który będzie obsługiwał w niedalekim czasie do 1000 osób każdy. :) Czyli serwer u mnie w mieście i 2 klienty w 2 miastach pozostałych.

0

zeby sie zdalnie zalogowac do firebirda musisz miec serwer + plik z bazą (chyba oczywiste) w aplikacji klienta ustawiasz adres IP komputera z serwerem i nazwe bazy i musi działać

wracajac do mysql jesli stoi na platnym serwerze to zapewne jest limit jednoczesnych polaczen np. ja mam home.pl i tam jest max 5 połączeń z zewnatrz i nie ma opcji zeby to zmienic mimo iz mam hosting dedykowany

0

Przedstawiłem gościowi sytuację.

On chce zrobić tak, że ten serwer to będzie jego komp w biurze u niego w miescie. On ma IP publiczne zmienne. Kompa włącza od godz. 9 do 17 każdego dnia oprócz weekendów i na tym by polegał serwer wg niego. Po godz. 17 robi sobie kopię programu z plikiem bazy na pendrive i idzie do domu z tym. Pracownicy na klientach już wtedy nic nie zrobią bo serwer jest wyłączony.

Teraz 2 programy jako klienci będą działać w dwóch innych miastach.

Ostatnią rzeczą jaką mi zostało do zrobienia to to że jak on włączy swojego kompa to program robiący jako serwer (która ma plik z bazą) muzi jakoś wysłać swoje IP zewnętrzne do programów klienckich gdy one się uruchomią.

Można zrobić jakoś IP serwera na stałe? Czy to trzeba załatwiać u providera?

Rozumiem żeby cały projekt mi działał czyli serwer + 2 klienty to muszę wysłać klientom adres IP serwera, klienci muszą znać ścieżkę do pliku na serwerze oprócz tego IP i w tych trzech stanowiskach musi być otwarty port 3050 tak?

0

Ale kombinacje. Na zmienne IP jest recepta - DynDNS. Co do baz w różnych miastach - średnio to pewnie będzie działać.

Jak się znasz na CS / SS to zrób sobie mechanizm replikacji danych, wtedy instalujesz serwer u każdego a dane się synchronizują.

Jak chcesz żeby userzy łączyli się przez internet - to musisz to szyfrować, albo VPN albo jakieś zeebeedee.

Z kopią programu na pen też bym uważał, bardzo łatwo spieprzyć bazę w ten sposób jak się to zrobi nieodpowiednio.

b

0

Co do baz w różnych miastach - średnio to pewnie będzie działać

Dlaczego? Rozwiń myśl.

Jak się znasz na CS / SS to zrób sobie mechanizm replikacji danych, wtedy instalujesz serwer u każdego a dane się synchronizują.

Jak chcesz żeby userzy łączyli się przez internet - to musisz to szyfrować, albo VPN albo jakieś zeebeedee.

To są dla mnie kombinacje.

0

A ja bym się zastanowił nad zrobieniem aplikacji internetowej z użyciem biblioteki "VCL for the web" (intraweb). Aplikacja na serwerze w Irlandii. Koszt wynajęcia serwera VPS wynosi 15 euro miesięcznie. Tutaj jest taka przykładowa aplikacja, którą robiłem jako demonstrację działania tej technologii.

http://gry-planszowe.waw.pl/files/warcaby_angielskie.html

Można oczywiście dorobić zaawansowane GUI do takiej aplikacji, szczególnie wtedy gdy to nie jest technologia B2B. Są takie możliwości z użyciem profesjonalnym szablonów stron, robionych przez grafika komputerowego, które to szablony dołącza się do aplikacji. Ta technologia nie wymaga programowania na poziomie socketów, bo wszystkie niskopoziomowe rzeczy załatwia biblioteka.

0
Pracownik napisał(a)

Dlaczego? Rozwiń myśl.

Chodzi o prędkość działania. Chyba że wszyscy mają 10/10 Mb.

Pracownik napisał(a)

Jak się znasz na CS / SS to zrób sobie mechanizm replikacji danych, wtedy instalujesz serwer u każdego a dane się synchronizują.
Jak chcesz żeby userzy łączyli się przez internet - to musisz to szyfrować, albo VPN albo jakieś zeebeedee.

To są dla mnie kombinacje.

A dla mnie to jest bezpieczeństwo lub fachowe podejście do tematu.

Rób jak uważasz, uważaj jak robisz.

b

1 użytkowników online, w tym zalogowanych: 0, gości: 1