Php скрипт не подключается к MySQL (Vagrant VM)

Мне нужна помощь для сценария php для подключения к базе данных MySQL.

Я установил VirtulaBox и Vagrant и настроил сервер Ubuntu 16.04. На сервере я установил apache2, php7.0 и mariadb.


Я создал второго пользователя mysql (помимо корневого), и я могу подключиться в командной строке к mysql как с root, так и с новым пользователем.


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

"Не удалось подключиться к MySql: доступ запрещен для пользователя" Lucian "@" localhost "(с использованием пароля: ДА)"

На уровне mysql у меня есть два пользователя: root и lucian. Я могу подключиться к ним обоим из командной строки. Пользователь lucian@localhost - это пользователь, который использует ssh для входа на сервер из Vagrant на основе пары открытых / закрытых ключей.


Похоже, что скрипт пытается подключиться к mysql с помощью бродячего пользователя. Еще одна вещь, если я пытаюсь подключиться в терминале просто с помощью команды mysql -p, я получаю похожее сообщение об ошибке (даже если я использую пароль для пользователя root). Я попытался установить соединение с PHPStorm, но у меня тоже не получилось. PHP-скрипт выглядит следующим образом:

<?php  DEFINE('DB_USER', 'lucian');  DEFINE('DB_PASSWORD', 'xxx'); DEFINE('DB_HOST', '127.0.0.1'); DEFINE('DB_NAME', 'portal');

$dbc = @mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME) OR die ('Could not connect to MySql: '. mysqli_connect_error() );

Что меня удивляет, так это то, что скрипт (который находится на сервере) не использует правильные учетные данные, которые работают из командной строки? Любая помощь приветствуется! Спасибо!

0 ответов

Другие вопросы по тегам