Citat:
Originalno napisao ivanhoe
Odjednom mi u lokalu ni jedna skripta ne uspeva da se poveze na mysql, dobijam gresku "No such file or directory (trying to connect via unix:///var/mysql/mysql.sock)"
U pitanju je MacOS, koristim apache koji dolazi uz sistem, i naknadno instaliranu bazu, i to je sve radilo normalno pre jedno nedelju dana kad sam zadnji put nesto radio na laptopu. U medjuvremenu su se instalirali neki security updates, pa je to mozda pobrljavilo nesto oko privilegija.
Koliko ja mogu da provalim baza radi normalno, mogu joj pristupiti mysql klijentom iz komandne linije, ali iz php nece da radi. Ta putanja u kojoj on trazi socket /var/mysql/ uopste ne postoji, a nije mi jasno ni zasto se kaci preko socketa. U konfiguraciji je podeseno za mysql_connect da je host 'localhost' i to je to, nikakva druga posebna podesavanja nisam stavljao, niti sam bilo sta ja rucno menjao u medjuvremenu na sistemu. Osim tog automatskog updejta koji sam uradio prekjuce...
Jel ima neko ideju o cemu se radi? I kako da nateram php da se kaci na pravi socket ili makar na TCP, svejedno mi je...
EDIT: sad sam proverio, socket se nalazi u mysql.sock, to je gde i treba da bude na Mac-u, znaci php je pobrljavio i trazi ga na pogresnom mestu?
|
Imash dve varijante kako da resish problem.
Prva je da promenish putanju gde mysql kreira socket file, a druga je da u php.ini promenish gde php trazi socket file.
Prva varijanta:
editujes /etc/my.cnf (ako ne postoji kreirash ga, i setujes
Kôd:
[mysqld]
socket=/putanja/koja/tebi/treba.sock
i restartujesh mySql.
Druga varijanta:
editujesh php.ini i promenish ovaj red u putanju koja tebi treba, i restart apache-a.
Kôd:
mysql.default_socket = /var/mysql/mysql.sock
Pozz