2015-07-18 15 views
3

Я делаю простой mysqli подключение к моей базе данных на GoDaddy хостинг Windows, мой код выглядит следующим образом:Доступ запрещен для пользователя при подключении к базе данных Godaddy на хостинге Windows?

<?php 

     error_reporting(E_ALL & ~(E_STRICT|E_NOTICE)); 

      $host = 'localhost'; 
      $user = 'root_user_name'; 
      $password = 'root_user_pass'; 
      $db = 'my_database'; 
      $cxn = mysqli_connect($host,$user,$password) or 
        die(mysqli_connect_error()); // <<<<<< line 9 
      mysqli_select_db($cxn, $db) or die(mysqli_connect_error()); 


     die('test'); 

Я уверен предоставленному имя пользователя и пароль, а также имя базы данных, все мои учетные данные являются правильными , хотя я получаю эту ошибку:

Warning: mysqli_connect(): (HY000/1045): Access denied for user 'root_user_name'@'localhost' (using password: YES) in G:\path\to\file\index.php on line 9 Access denied for user 'root_user_name'@'localhost' (using password: YES)

Я получил это работает на локальном хосте с таким же именем базы данных и учетные данные с помощью WAMP сервера, я не так много на сервере IIS и окна хостинга .. Любая помощь будет оценена.

+0

проверить с поддержкой godaddy, что расширение mysqli установлено на вашей панели хостинга – Shehary

+0

Установлено, я проверяю phpinfo() – Khaldoun

+0

Просто убедитесь, что: index.php размещен на вашем удаленном сервере или вы выполняете его на своей собственной машине? – spenibus

ответ

6

У меня когда-то была эта проблема и я просто разрешил ее, установив реальный IP-адрес сервера базы данных на моем хосте при подключении к базе данных. Чтобы получить IP-адрес, войдите в свою учетную запись хостинга и получите доступ к базам данных, затем щелкните по управлению нужной вам базой данных, и это приведет вас к phpMyAdmin. Справа находится блок с заголовком Сервер базы данных, вы можете найти IP-адрес сервера в первом элементе списка. Используйте его в вашем $host, а не локальный хоста:

$host = '51.51.51.51'; // <<<< just a fake IP address for the example 

У меня было много сурового время, чтобы выяснить, что происходит не так, я даже связался с поддержкой и получил такой ответ:

Joshua - I think the permissions are the cause of the issue. Once you have them properly updated, the problem should go away.

Они заявили, что разрешение файлов может быть проблемой, я обновил разрешения на файл, но не разрешил его.

Иногда решение намного ближе, чем вы можете придумать !!

0

Это немного удар в темноте; но вы должны проверить фактический номер host, определенный в таблице пользователей mysql. Возможно, ваше решение WAMP подключилось к localhost через ipv4 (127.0.0.1); и ваш текущий сервер использует ipv6 (::1). Пользователь, который вы используете для подключения, должен иметь тот же адрес, определенный на сервере базы данных. Метод Simples проверки это делает, что у вас есть 3 пользователей в вашей БД с этими учетными данными, один для ipv4 (127.0.0.1), один для ipv6 (::1) и один на основе имени хоста (например. localhost)

+0

Я определил своего пользователя с помощью создания пользовательской базы данных godaddy, я не импортировал ни одного пользователя, созданного на localhost, но я проверю вашу точку @Sjon и вернусь с результатами, как только я их получу. – Khaldoun

1

Новый MySQL форма настройки базы данных будет принимать символы смешанного регистра в качестве имени/имени базы данных, она беззвучно преобразует их в нижний регистр. Таким образом, логин phpMyAdmin зависит от регистра, поэтому вы можете скопировать и вставить из Центра управления в phpMyAdmin, чтобы убедиться, что вы правильно его используете.