Итак, я взламываю какое-то программное обеспечение и решаю запустить команду MySQL
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password';
Затем я замечаю, что мой трекер ошибок использует тот же локальный сервер MySQL на моем компьютере разработки.
Ну черт возьми ..
Теперь, когда я пытаюсь использовать свой трекер ошибок (Mantis), я получаю сообщение об ошибке.
ОШИБКА ПРИЛОЖЕНИЯ # 400 Ошибка подключения к базе данных. От базы данных получена ошибка # 1045: Доступ запрещен для пользователя root @ localhost (с паролем NO). Пожалуйста, используйте кнопку «Назад» в вашем браузере, чтобы вернуться на предыдущую страницу. Там вы можете исправить все проблемы, обнаруженные в этой ошибке, или выбрать другое действие. Вы также можете щелкнуть опцию в строке меню, чтобы перейти непосредственно к новому разделу.
Произошли предыдущие нефатальные ошибки. Содержание страницы следует.
СИСТЕМНОЕ ПРЕДУПРЕЖДЕНИЕ: 'mysql_connect () [function.mysql-connect]: Доступ запрещен для пользователя' root '@' localhost '(с использованием пароля: NO)' »в 'C: \ xampp \ htdocs \ mantis \ library \ adodb \ drivers \ adodb-mysql.inc.php 'строка 365
Я проверил внутри файла php, и в этой строке установлено соединение MySQL.
function _connect($argHostname, $argUsername, $argPassword, $argDatabasename)
{
if (!empty($this->port)) $argHostname .= ":".$this->port;
if (ADODB_PHPVER >= 0x4300)
$this->_connectionID = mysql_connect($argHostname,$argUsername,$argPassword,
$this->forceNewConnect,$this->clientFlags);
else if (ADODB_PHPVER >= 0x4200)
$this->_connectionID = mysql_connect($argHostname,$argUsername,$argPassword,
$this->forceNewConnect);
else
$this->_connectionID = mysql_connect($argHostname,$argUsername,$argPassword);
if ($this->_connectionID === false) return false;
if ($argDatabasename) return $this->SelectDB($argDatabasename);
return true;
}
Используя MySQL Workbench, я вижу, что
ВЫСТАВКА ГРАНТОВ;
Кажется, виноват первый ряд ... Думаю ...
Есть ли способ отменить это?
Спасибо :)
using password: NO
. Другими словами, ваш код не отправляет его в mysql, а вашgrant
четко устанавливает пароль для учетной записи, поэтому вам будет отказано в доступе. - person Marc B   schedule 18.02.2014