java a baza danych

0

Witam,
uczę się kodowania w Javie i chciałem teraz ogarnąć bazy danych. W związku z tym założyłem darmowe konto na hostingu 7mpl, utworzyłem prostą bazę danych i za nic nie mogę się z nią połączyć za pośrednictwem Javy. Nie wiem czy podaję zły adres hosta czy na hoscie muszę coś skonfigurować żeby java się łączyła z bazą danych? Wywala mi ciągle Exception: "com.mysql.jdbc.exceptions.jdbc4.CommunicationsException".

Podczas założenia konta dostałem info.:
Link to the database: sql-7-mpl,
The database server: sql-7m-pl,
Name database: db-user2824,
Login database: db-user2824.

Po zalogowaniu przez stronę mam tam informacje
Serwer: Hosting 5v-----pl (127.0.0.1 via TCP/IP)
Typ serwera: MySQL
Wersja serwera: 5.5.53-0+deb8u1 - (Debian)
Wersja protokołu: 10
Użytkownik: db-user2824
Kodowanie znaków serwera: UTF-8 Unicode (utf8)

Dodam że ściągnąłem bibliotekę ze sterownikami mySQL i je załadowałem. Jak by mi ktoś mógł napisać jak powinien wyglądać prosty kod do połączenia się z moją bazą danych to bym był wdzięczny.
Pozdrawiam.

1

Pierwsze próby połączenia robi się programem konsolowym mysql albo gui MySQL Workbench. Dopiero jak to zadziała - próbuj w Javie. Adres hosta musisz podać prawidłowy, na pewno nie 127.0.0.1. Może być też potrzebny numer portu.

Hosting pewnie wymaga odblokowania bezpośredniego połączenia, może ze wskazaniem ip klienta. Lepiej zainstaluj sobie na razie serwer mysql lokalnie i na nim rób pierwsze próby.

0

No i wychodzi, że zrobię tak jak piszesz czyli lokalnie. Chodź tak naprawdę napisałem mały programik w Swingu i chciałem wyniki zapisywać gdzieś na zewnątrz w bazie danych no ale chyba mnie to przerasta jak na razie :).
Dzięki i pozdrawiam

0

Jak będzie Ci działać lokalnie, to przestawienie na serwer będzie formalnością. Napisz znowu, jak będziesz miał z tym problem. Ja mam na hostingu opcje dostępu do mysql i muszę tam odblokować zdalny dostęp do bazy. Ale wyobrażam sobie taki hosting, gdzie nie zezwalają na zdalne połączenie z mysql. Będziesz musiał poszukać informacji u nich.

0

Zrób sobie projekt z Apache Derby (Embedded) i ew. Maven.

Masz do wyboru

  • Java DB jeśli używasz Oracle JDK - to jest Derby w wersji od Oracle
  • Apache Derby + Maven jeśli używasz OpenJDK (bo masz linuksa i nie chce Ci się ściągać JDK)

Zalety tej bazy:

  • jeśli wybierzesz Apache Derby to Maven ściągnie Ci wszystkie zależności
  • poza ciągiem połączeniowym w JDBC nic nie musisz konfigurować
  • w necie masz sporo przykładów do tej bazy
  • serwer wstaje momentalnie i momentalnie się zamyka
0

Piotr, jemu nie chodzi o embedded database. A jak nie używasz Derby jako Embedded, to nie masz już żadnych zalet w stosunku do MySQL.

Jak ktoś myśli o bazie hostingowej, to nie widzę lepszego wyboru od MySQL. Na hostingu linuxpl.com, którego używam, jest możliwość zdalnego podpięcia wprost do bazy. Cały hosting kosztuje 50 zł rocznie.

1
jarekczek napisał(a):

Piotr, jemu nie chodzi o embedded database.

Nic na to nie wskazuje. Chodzi mu o pracę z bazą danych w Javie. Nie napisał że musi być do tego serwer. A MySQL pasuje do Javy jak pięść do nosa.

0

OP założył bazę serwerową na hostingu, chce się z nią łączyć. Pisze o umieszczaniu bazy danych na zewnątrz. Jeżeli dla Was (@vpiotr i ten co dał +1) pasuje tutaj embedded database, to ja wymiękam. Rozumiem, że można to przeoczyć, ale jak widzę +1, to już muszę odpisać.

A MySQL pasuje do Javy jak pięść do nosa.

Hejtujemy MySQLa? Dlaczego? Chętnie poznam rzeczowe argumenty. Możesz również podać lepsze rozwiązanie na dane programu lokalnego trzymane na serwerze.

0
jarekczek napisał(a):

OP założył bazę serwerową na hostingu, chce się z nią łączyć. Pisze o umieszczaniu bazy danych na zewnątrz. Jeżeli dla Was (@vpiotr i ten co dał +1) pasuje tutaj embedded database, to ja wymiękam. Rozumiem, że można to przeoczyć, ale jak widzę +1, to już muszę odpisać.

Myślę, że nie zrozumiałeś oryginalnego problemu.
Cytat:

Smutny Kot napisał(a):

uczę się kodowania w Javie i chciałem teraz ogarnąć bazy danych.

Poza tym, do nauki baz danych w Javie jest wiele rozwiązań lepszych od MySQL, a Apache Derby / Java DB działa zarówno w wersji embedded jak i c/s.
Dla przypomnienia czym jest tryb embedded, bo po komentarzach można odnieść wrażenie że nie wiesz:
https://db.apache.org/derby/papers/DerbyTut/embedded_intro.html

jarekczek napisał(a):

Hejtujemy MySQLa? Dlaczego?

W 2017 roku MySQL-a nie rzeba hejtować. Raczej jeśli go chcesz jeszcze używać, trzeba go bronić i to bardzo walecznie, bo bez tego zginie w zapomnieniu.
https://www.reddit.com/r/programming/comments/2vf4b1/terrible_choices_mysql/

0

Hej panowie powolutku i bez nerwów. Tak dopiero zaczynam z bazami danych i w Javie też nie mam jakiegoś ogromnego doświadczenia i nie wiedziałem, z której strony to ugryźć. Mimo wszystko wolałbym ogarnąć bardziej przyszłościowy kierunek.Nie wiem czy to Derby czy mySQL Póki co to połowę rzeczy wyjaśnia mi wujek Google. :). Udało mi się stworzyć bazę danych lokalnie instalując MAMP i ściągając connector JDBC. NIe jestem w stanie stwierdzić czy to źle ,dobrze , średnio na jeża czy jeszcze jakoś tak no ale działa :)

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