2016-04-10 13 views
-1

OS X El Capitan kullanıyorum. Mysql çalışıyor ve mysql komut satırı aracını kullanarak tablo ekleyebiliyorum. PHP dosyamdan veritabanına bağlanmaya çalıştığımda 1045 hatası alıyorum.PHP dosyam neden mysql'ye bağlanmıyor?

$dbc = mysqli_connect('127.0.0.1', 'root', '*****', 'aliendatabase') 
// or die('Error connecting to MySQL server. '); 
or die("Debugging errno: " . mysqli_connect_errno()); 

$query = "INSERT INTO aliens_abduction (first_name, last_name, when_it_happened, how_long, " . 
"how_many, alien_description, what_they_did, fang_spotted, other, email) " . 
"VALUES ('$first_name', '$last_name', '$when_it_happened', '$how_long', '$how_many', " . 
"'$alien_description', '$what_they_did', '$fang_spotted', '$other', '$email')"; 

$result = mysqli_query($dbc, $query) 
or die('Error querying database.'); 

mysqli_close($dbc); 

Ben aşağıda hibe seçenekleri belirledik: Aşağıda kodudur

GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY PASSWORD '*477A2FE5488EA451D53F4BFE898AA4D4F61B68EF' WITH GRANT OPTION GRANT PROXY ON ''@'' TO 'root'@'localhost' WITH GRANT OPTION 

Bunu çalışmıyor ve ben mysql sürecini başlayarak denedim neden çalışamaz hem mysql.server start ve mysqld. Açıkçası, bağlantı argümanlarındaki yıldız işareti şifremi gösteriyor. Ne eksik olduğumu bilen var mı?

+0

ben bu çevrimiçi yanıtlar bir sürü biliyorum ama bunların hiçbiri benim spesifik bir durumda yardım görünüyor, eklemelidir. –

+0

Şifre olmadan bağlanmayı denediniz mi? mysql -u root gibi bir şey? –

+0

Sadece mysql yazarak komut satırı aracına girebilirim. Ancak, eğer 'mysql -u root 'yazarsam Erişim Reddedildi mesajını alırım. –

cevap

0

Sen localhost üzerine ayrıcalıkları verilmesi olmanız ve bağlantılı olarak localhost için 127.0.0.1 değiştirmeyi deneyin 127.0.0.1

bağlanırken:

$dbc = mysqli_connect('localhost', 'root', '*****', 'aliendatabase')

Ya da en azından [email protected] da verilmiş uygun izinleri sağlamak.

+0

Yanıt için teşekkürler. Aslında söylediğin gibi izinleri verdim, ama hibe gösterdiğimde 127.0.0.1 'localhost' oldu. Ayrıca, 'mysqli_connect()' işlevinde bir argüman olarak 'localhost' kullandığımda,' localhost'un '127.0.0.1''le eşleşmemesi nedeniyle farklı bir hata alıyorum. Bu daha sonra başa çıkmam için ayrı bir problem. –

İlgili konular