Sziasztok,
Lenne egy problémám amiben a segítségeteket kérem. Egy távoli gépen futó MySQL adatbázishoz szeretnék csatlakozni php-val, de nem megy.
A tavoli gépen a mysql fel van készítve, a tűzfal meg van nyitva.
Ha parancssorbol kiadom az utasitast: mysql -u usernev -h tavoligepdomainneve.hu -P 3307
(masik portra van felteve ezert 3307)
Tehat ezzel a parancscsal tudok parancssorbol csatlakozni, elerem az adatbazist, minden ok.
De ha php-ból próbálom meg ezzel a kóddal akkor nem megy:
a php kód:
$mysqluser = "user";
$mysqlpasswd = "jelszo";
$mysqlhost = "000.000.000.000:3307"; // A tavoli gep Ip cime
$link = mysql_connect($mysqlhost, $mysqluser, $mysqlpasswd);
if (!$link) {
die('Could not connect: ' . mysql_error());
}
echo 'Connected successfully
';
Ezekre a sorokra ez a hibauzenet jon:
Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'user'@'000.sajatgep_ip_cime.000' (using password: YES) in /var/www/php/lib/init.php on line 28
Could not connect: Access denied for user 'user'@'000.sajatgep_ip_cime.000' (using password: YES)
Kihagytam valamilyen csomagot a telepitesbol, ami miatt a kliens a sajat adatbazisahoz es nem a tavoli gep adatbazisahoz akar fordulni?
Merre induljak? Tanacsatalan vagyok.
Koszonom a segitseget.
- 8631 megtekintés
Hozzászólások
RTFM
Access denied for user 'user'@'000.sajatgep_ip_cime.000'
Ezt orvosold
- A hozzászóláshoz be kell jelentkezni
Köszönöm a segítséget! :)
Azért irtam mert a manual alapjan nem jutottam semmire.
- A hozzászóláshoz be kell jelentkezni
'Access denied'? jelszó biztos jó?
Esetleg php-ban lehet letiltva a mysql. Vagy helyi tűzfal nem tiltja a www-data-nak a kapcsolódást?
--
The Net is indeed vast and infinite...
http://gablog.eu
- A hozzászóláshoz be kell jelentkezni
Jelszó biztosan jó, másik gépről gond nélkül megy ez a kód. Onnan másoltam át.
Helyi tuzfal elmeletileg nem tiltja, de megnezem ismet.
Php-bol nincs tiltva az SQL- de ezt is esmet leellenorzom.
Milyen csomagok kellenek Debian alatt minimum ahhoz, hogy kapcsolodni tudjak?
Ezeket tettem fel:
apt-get install apache2-mpm-prefork
apt-get install libapache2-mod-php5
apt-get install php5-mysql
apt-get install mysql-client-5.0
apt-get install curl
apt-get install php5-curl
- A hozzászóláshoz be kell jelentkezni
az "access denied" eleg beszedes uzenet...
t
- A hozzászóláshoz be kell jelentkezni
Neked mit mond? ha az user a jelszo a port es az ip cim biztosan megfelelo. Akkor miert tilja a hozzaferest?
Ugyan ez a kod mas gepeken gond nelkul megy. Azokon a gepeken Ubuntu van,ezen amin nem megy debian.
De ugyan azok a csomagok vannak fent, ugyan az a php fajl. megsem megy.
- A hozzászóláshoz be kell jelentkezni
Nekem az gyanus, hogy az user@ utan a sajat gepem IP cime van es nem a tavoli gep cime amihez kapcsolodni szeretnek.
- A hozzászóláshoz be kell jelentkezni
Ez a lényeg, hogy milyen névvel és milyen gépről csatlakozol. Ez pedig tuti benne van a manual-ban.
- A hozzászóláshoz be kell jelentkezni
PHPmyadmin-ban a jogosultságoknál felveszel az user-hez hostnak egy %-ot, vagy a saját IP címed és menni fog
- A hozzászóláshoz be kell jelentkezni
Fel van veve, hiszen parancs sorbol gond nelkul tudok csatlakozni tavolrol.
- A hozzászóláshoz be kell jelentkezni
A megoldás triviális.
A MySQL mysql adatbázisban a columns_priv, db, host, user táblákat kell megnézned.
A probléma, hogy csak adott Host-ról engedélyezed ezzel az userrel kapcsolatot.
A host az a Forrás, tehát ahonnan kapcsolódsz.
Ha bárhonnan használj %-ot.
- A hozzászóláshoz be kell jelentkezni