This answer has been edited several times based on new info provided by the OP
Kök gerçekten allowed Eğer bağlanırken ana bilgisayardan sunucuya bağlanmak mı? Hata dize sunucunun kurallı adını dönen varsa, 'localhost' 127.0.0.1 işaret olmadığını çok iyi bir şans var:
"Access denied for user
'root'@'MY.SERVER.HOST.NAME' to
database 'dbname'"
Yani "localhost @ kullanıcının 'root' için reddedildi Erişim '" değil, sunucunun adı gibi bir şey yankı gerekir.
Deneyin:
$con = mysql_connect("127.0.0.1","root","pass");
Edit (yorumlar sağlanan daha fazla bilgi Sonrası)
Eğer tamamen farklı bir ana bilgisayardan bağlantı yapıyorsanız, user@remote_hostname_or_ip
bağlamak için izin ve bir veritabanı ve kullanıcı oluşturmak için uygun ayrıcalıklar vardır MySQL söylemek zorundayım.
Sen phpmyadmin (MySQL sunucusu) kullanarak oldukça kolay bunu yapmak, ya da bir sorgu gibi yapabilirsiniz:
CREATE USER 'root'@'192.168.1.1' IDENTIFIED BY PASSWORD 'secret';
GRANT ALL PRIVILEGES ON * . * TO 'root'@'192.168.1.1' IDENTIFIED BY PASSWORD 'secret' WITH GRANT OPTION MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ;
Ben, bu kullanıcı 'kök' adlandırma değil, tavsiye, sadece ihtiyaç duyulan küresel ayrıcalıkları her bir kullanıcı yaratacak. Örnekte, ben kolay kolay, sadece emin DNS uygun kurulmuş olduğunu, bir konak ismi olabilir, 192.168.1.1 kullanılır. Eğer uzak sunucuya bağlanmak zaman günlükleri göründüğü gibi exactly maç ev sahibi belirtin.
Ayrıca tadı sınırlarını ayarlamak isteyebilirsiniz. CREATE USER
sözdizimi hakkında daha fazla bilgi olabilir found here, GRANT
here.
Edit
MySQL 4 kullanıyorsanız - CREATE bir seçenek değildir. Sadece GRANT (4.1 Docs On User Management) kullanmak istiyorsunuz
Edit
C-Panel kullanıyorsanız, sadece use the API. Evet, onun tuhaflıklar var iken, onun daha kolay ad-hoc çalışma arounds yerine kullandığı malzeme korumak için. Başarılı uygulamaları bir çok sorunu olmadan kullanabilirsiniz. Başka bir API gibi, bunu kullanırken değişikliklerin üstünde kalmak gerekir.