Web Tutorials
Kako se povezati na mySQL bazu sa drugog server hostinga ?

Kako se povezati na mySQL bazu sa drugog server hostinga ?

Imate Web stranicu na jednom hostingu, a sada zelite da ostvarite pristup sa svoje stranice na drugi hosting gdje je vasa mySQL baza ? Imamo rijesenje. Objasnit cemo vam kako se povezati na mySQL bazu sa drugog hostinga.

Ukoliko imate problema sa povezivanjem na drugi hosting gdje se nalazi vasa mySQL baza ( u nasem slucaju mysql baza od UCP Panela se nalazi na drugogm hostingu, a nas web sajt odakle se povezujemo na namecheap hosting)  pokazat cemo vam jednostavne korake da rijesite taj poblem.

mysql bazu

Kako dolazi do ovakvog problema?

S ovim problemom cemo se susresti kada pokusamo pristupiti mySQL bazi sa nekog drugog, tako reci za njih ” nepoznatog servera”. Vecina Hosting servera ima mjeru sigurnosti kada su u pitanju konekcije sa drugih izvora, jednostavno ne zele da ” treca lica” imaju dodir sa njihovim serverom, sto zbog napada , toliko i zbog politike poslovanja. Vecina njih zeli da zakupite kod njih i Hosting i kreirate tu sve ono sto vam treba.

U nekim slucajevima kao sto su Online MultiPlayer igre , kao u nasem slucaju da nam je Web sajt i forum na jednom hostingu a mySQL baza od Igrice na drugom hostingu ( iz razloga sto game hosting u rijetkim slucajevima nudi i web hosting) i tako pristupamo podacima od podataka nasih igraca. Oni u  UCP mogu imati pristup svom racunu, izvrsiti neka odredjana podesavanja itd…

Kako rijesiti problem i dozvoliti pristup trecih lica ?

Jednostavno receno , lako. Dovoljno je da izvrsite par izmjena na vasem cPanelu. U nastavku teksta mozete slijediti nase korake:

  • Ulogujte se u Vas cPanel
  • Otvorite odeljak ” mySQL baze “
  • Pronadjite opciju ” Create Remote User “
  • Kreirajte Korisnika ( Create Remote User )
  • Unesite password
  • IP Adresu od vaseg Web Hostinga sa kojeg pokusavate se povezati

mysql bazu hostinga

Kako sada povezati sajt sa napravljenim userom mySQL baze ?

Podatke koje ste dobili prilikom kreiranja mySQL usera sacuvajte , jer ce nam sada trebati. Biti ce nam potrebno jos nekih informacija:

  • Hostname (IP adresa ili domena gdje se baza nalazi)
  • Korisničko ime
  • Lozinka
  • Ime baze podataka

Osigurajte da se dozvolili  All Permision ( Dozvole ) u php Adminu od vase mysql baze jer to moze uticati jako na ovaj problem.

Unesite dobijene podatke u Vas php kod za povezivanje na mySQL bazu ( ili u WordPress/SMF/Jomla itd installation panel prilikom instaliranja web sajta )

Ukoliko unosite php podatke u vasu index stranicu onda ce taj kod izgledati ovako:

<?php
$host = ‘http: IP’;  ( IP adresa Vaseg hosta ili link )
$db = ‘ime_mysql_BAZE ‘;  ( Unesite ime vase mysql baze na koju se pokusavate povezati )
$user = ‘korisnicko_ime’;  ( Unesite korisnicko ime koje ste dobili prilikom kreiranja Remote Usera )
$pass = ‘lozinka’;  ( Lozinka Vaseg Remote Usera koje ste kreirali )

try {
$dsn = “mysql:host=$host;dbname=$db;charset=utf8”;
$pdo = new PDO($dsn, $user, $pass);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
echo “Uspjesno ste se povezali na vasu bazu podataka”;
} catch (PDOException $e) {
echo “Neuspješno spajanje: ” . $e->getMessage();
}
?>

Povezivanje bi trebalo biti uspjesno, ukoliko i dalje ne radi napravite jedan print log ( kao sto smo mi napravili) , da bi lakse uocili gdje nastaje problem i rijesili ga lako.

Ukoliko dobijate poruku ” Neuspjesno spajanje” provjerite par ovih stavki. Ovo su najcesci problemi prilikom spajanja na mySQL bazu sa drugih hostinga.

Firewall i Port: Provjeri da li je port 3306 (standardni port za MySQL) otvoren na serveru i da li firewall dozvoljava pristup. Osigurajte da port 3306 (ili port koji koristiš za MySQL) dozvoljava dolazne konekcije s tvoje IP adrese.

Greška “Host ‘162.0.****77’ is not allowed to connect to this MySQL server” znaci da server na kojem se nalazi vasa baza ne dozvoljava pristup sa tvog hostinga ( IP ). Provjerite da li ste ispravno kreirali Remote User i unjeli tacno podatke za povezivanje. Provjerite da li ste omogucili sav pristup i privilegije na vasu bazu.  Prijavite se na php Admin i dozvolite pristup. Ukoliko imate potpunu kontrolu u php Adminu nad svojim bazama koristite ovaj kod za dozvolu svim privilegijama

GRANT ALL PRIVILEGES ON ime_baze.* TO ‘korisnicko_ime’@’162.0.217.77’ IDENTIFIED BY ‘lozinka’;
FLUSH PRIVILEGES;

Provjerite da li ste ispravno unijeli IP Adresu. Ukoliko zelite da budete sigurni, otvorite Vas cPanel i u desnom cosku mozete vidit IP adresu vaseg hostinga.

drugog hostinga

Ukoliko se vas web sajt ne ucitava vise nakon ovih izmjena , prodjite kroz ove korake:

Ako je vas kod koji smo napisalit (PHP Cod za povezivanje) ispravno unesen da se povezuje na MySQL bazu podataka, a ucitavanje sajta  traje duže nego obicno, može značiti samo jedno, da je veza uspostavljena, ali postoji problem s podacima ili upitima.

Provjeri MySQL upite jos jednom:

Ako ste u svom PHP kodu napisali ispravno  SQL upite koje smo napisali gore iznad u koracima, provjerite jesu li u potpunosti ispravni. Obratite paznju na ” ” i IP adresu i user name i password od vase baze. Ako upit nije ispravno napisan, možda se učitava, ali se ne može završiti.

Dodaj neki echo ili var_dump() izjave u svoj kod kako bi vidio do koje linije koda se izvršava. Na primjer, mozete dodati:

echo “Povezujem se na bazu…”;

echo “Povezivanje uspješno!”;

Provjeri logove:

Ako imate pristup serveru, provjeriye logove (npr. error_log) kako bi vidio ima li tamo kakvih informacija o grešci.

Timeout ili Povezivanje:

Ako se sajt predugo učitava, moguće je da se dobijaju timeout greške. Provjeri da li tvoje postavke veze uključuju timeout koji je razuman.

Cache i Cookies:

Ponekad je problem u cache-u. Očistite cache i kolačiće preglednika ili pokušaj učitati sajt u privatnom prozoru.

Provjeri konekciju:

Ako možete, provjerite i da li se mozete direktno povezati na MySQL bazu pomoću alata kao što je phpMyAdmin ili MySQL Workbench.

Ukoliko i ovo ne pomaze, slobodno nam se javite u komentar ispod, ipak svima preporucujemo da prodju vise puta kroz ove korake. Ukoliko ste uradili sve onako kako smo iznijeli u kratkim crtama , trebali bi ostvariti uspjesnu konekciju sa vasom mySQL bazom. Ukoliko smo rijesili vas problem, podijelite ovaj clanak sa drugima na drustvenim mrezama. U nastavku ispod mozete pogledati  jos slicnih Web tutorijala.

Leave a Reply

Your email address will not be published. Required fields are marked *