Ошибка подключения к базе данных. установка magento


10

Я пытался установить magento, но когда я пытаюсь установить magento из браузера, во время установки Magento отображается « Ошибка подключения к базе данных ».

введите описание изображения здесь


Вам нужно создать базу данных в phpmyadmin и указать ее имя пользователя и пароль.
Ахилеш Патель

Ответы:


9

Прежде всего, проверьте имя пользователя и пароль вашей базы данных. Прежде чем перейти к этому шагу, вы должны уже настроить базу данных в MySQL. Вам необходимо создать пользователя и предоставить ему права доступа.

Затем проверьте конфигурацию сервера MySQL. Номер порта по умолчанию - 3306. Однако системный администратор может изменить его на другой. Или, если вы используете пакеты программного обеспечения, такие как MAMP / WAMP, для номера порта может быть задано значение, отличное от 3306. В этих случаях вам необходимо явно указать номер порта в поле Host.

Если все это правильно и у вас все еще есть ошибка подключения к базе данных, вы можете попытаться использовать учетную запись root для доступа к базе данных. Если root работает, это означает, что есть проблемы с привилегиями в настройках MySQL. Хотя не рекомендуется использовать корневую учетную запись для будущего производственного развертывания, так как это добавляет угрозы безопасности для сервера.


все еще есть ошибка соединения с базой данных.
Даршан Патель

5

Это довольно старый вопрос, но я недавно столкнулся с ним, и я надеюсь, что этот ответ поможет кому-то еще. Моя проблема сводилась к старой версии Magento поверх новой установки WAMP. Начиная с MySQL 5.6.1, переменная have_innodb была удалена. Однако установщик Magento проверяет эту переменную и выдает ошибку, если не находит ее. Если вы действительно проверите журнал исключений, вы увидите ошибку, что сервер базы данных не поддерживает InnoDB. Тем не менее, в обработчике перехвата он регистрирует только это исключение и генерирует общее сообщение «Ошибка соединения с базой данных».

Самое простое исправление, если вы уверены, что ваша БД поддерживает InnoDB, - это просто отредактировать app\code\core\Mage\Install\Model\Installer\Db.php, найти checkDatabaseметод и закомментировать часть в конце блока try, который проверяет have_innodb. Обычно я не рекомендую редактировать основные файлы, но это только для того, чтобы заставить работать установщик, поэтому я бы сказал, что это достаточно безопасно.


4

Сначала создайте БД http://localhost/phpmyadmin

допустим имя БД: testdb

Страница конфигурации имя базы данных: имя пользователя testdb: пароль root: пусто (не вводите никаких значений)


4
  • Перейти к app/code/core/Mage/Install/Model/Installer/Db.php
  • Найти checkDatabase($data) функцию
  • В конце этой функции есть следующий код:

    Mage::throwException(Mage::helper('install')->__('Database connection error.'));
  • Измените это на следующее:

    Mage::throwException(Mage::helper('install')->__($e->getMessage()));
  • Перейдите в браузер, где вы устанавливаете Magento, нажмите Continue кнопку

  • Теперь вы должны увидеть правильное сообщение об ошибке

В моем случае я получил следующее сообщение об ошибке:

Сервер базы данных не поддерживает механизм хранения InnoDB.

Итак, чтобы решить эту проблему, я прокомментировал проверку InnoDB в той же checkDatabaseфункции.

// check InnoDB support
/*if (!isset($variables['have_innodb']) || $variables['have_innodb'] != 'YES') {
    Mage::throwException(Mage::helper('install')->__('Database server does not support the InnoDB storage engine.'));
}*/

После этого мне удалось установить Magento.


1

Вы можете попробовать использовать этот код, чтобы найти более подробную информацию о том, что это за ошибка соединения с базой данных, или проверить правильность имени пользователя и пароля.

<?php
      $mysqli=mysqli_connect("host","user","password","database name");

      if(mysqli_connect_errno()){
          printf("Connect failed: %s\n", mysqli_connect_error());
          exit();
      }else{
          echo "Connection succesfull!";
      }
?>

Сохраните этот скрипт как файл php и поместите его на сервер. На выходе будет ошибка соединения, или, если ошибки нет, на выходе будет «Соединение установлено!». «host» - здесь вы можете ввести «localhost», «user» - здесь вы должны ввести имя пользователя базы данных, «password» - здесь вы должны ввести пароль базы данных, «имя базы данных» - здесь вы должны ввести имя базы данных.


0
  1. Вы дали имя базы данных как magento
  2. Поэтому, пожалуйста, проверьте, создали ли вы эту базу данных с именем magento или нет.
  3. Если нет, то вам нужно сначала создать пустую базу данных magento.
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.