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.
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
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.
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.
- Kako obrisati virus reklamu sa WordPress-a
- SEO optimizacija: Kako kreirati kvalitetan clanak
- Kako dodati navigacioni meni – WordPress
- How to fix the “email could not be sent” easy