Задавайте вопросы, мы ответим
Вы не зашли.
Страниц: 1
MySQL находится на сервере с ip-адресом 1.1.1.1
В настоящий момент с этой MySQL успешно контактирует СУС "Опенкарт".
Вот с таким значениями в конфигурационном файле.
define('DB_DRIVER', 'mysqli');
define('DB_HOSTNAME', 'localhost');
define('DB_USERNAME', 'my_name');
define('DB_PASSWORD', 'my_pass');
define('DB_DATABASE', 'my_name');
define('DB_PORT', '11');
define('DB_PREFIX', 'oc_');
Только что я попытался подключить PHP-скрипт на сервере с ip-адресом 2.2.2.2 к этой MySQL на сервере с ip-адресом 1.1.1.1 .
Посредством такой записи.
mysqli_connect('1.1.1.1','my_name','my_pass');
Но MySQL вход для пользователя с именем my_name не открыла. Цитирую комментарий из браузера.
"Warning: mysqli_connect(): (HY000/1045): Access denied for user 'my_namet'@'serverZED.hosting.ru' (using password: YES) in /var/www/u0470798/public_html/test/authorization/authorization.php on line 15"
то есть пароль верен, но для пользователя my_name вход запрещён.
При этом посредством PHPMyAdmina мне вручную удалось зайти в MySQL на сервере с ip-адресом 2.2.2.2 , с теми же данными.
Оба сервера подключены к единой внутренней сети хостера "РегРу".
Все важные значения в данном вопросе заменены условными.
Неактивен
Проблема решена. Надо было в "Список IP-адресов" пользователя внести ip-адрес 2.2.2.2 .
Неактивен
Vtornik написал:
Но MySQL вход для пользователя с именем my_name не открыла. Цитирую комментарий из браузера.
"Warning: mysqli_connect(): (HY000/1045): Access denied for user 'my_namet'@'serverZED.hosting.ru' (using password: YES) in /var/www/u0470798/public_html/test/authorization/authorization.php on line 15"
то есть пароль верен, но для пользователя my_name вход запрещён.
небольшое уточнение:
(using password: YES) означает, что был использован не пустой пароль при попытке подключения (а не то, что он верен)
подробности см MySQL error 1045
Неактивен
Благодарю. Возник другой вопрос.
В СУС "Опенкаде" пароль кешируется три раза:
sha1($salt.sha1($salt.sha1($password)));
C использованием короткой строки наподобие 1x2zq2yr , которая находится в таблице MySQL, в её поле с заголовком salt .
Я написал запрос, который из этого поля выводит salt там, где в поле email стоит конкретный адрес почтового ящика.
"SELECT `salt` FROM `my_table` WHERE `email` = 'my_email@mail.ru' LIMIT 0 , 30"
В PHPMyAdmina ответ получается верный, а в скрипт поступает сходная по типу строка, но отличная по содержанию, с другими латинскими буквами и цифрами.
Отредактированно Vtornik (07.03.2018 17:28:58)
Неактивен
Я понял свою ошибку. Скрипт подключил к рабочей базе данных, а проверял результаты его работы по тестовой базе данных.
Неактивен
Страниц: 1