Неустранимая ошибка: Исключение PDO: SQLSTATE[42000] [1049] Неизвестная база данных [закрыта]
У меня есть сайт разработки (сайт1) и я создал второй (сайт2) с помощью drush, скопировал все модули/темы и продолжил разработку. Оба работали, и я продолжал обновлять модули в обоих. Когда я вернулся на сайт 1, я обнаружил следующее сообщение об ошибке:
Исключение PDO: SQLSTATE[42000] [1049] Неизвестная база данных "mydevelopmentdb" в lock_may_be_available() (строка 167 моего веб-сайта/включает/lock.inc).
Есть функции и узлы, которые я хотел бы использовать в site2, но я не могу получить к ним доступ. Поэтому я создал новый сайт (site3) с помощью drush, скопировал внесенные модули и темы с сайта 2 и импортировал базу данных с сайта 1 в сайт 3, только чтобы получить то же сообщение об ошибке, что и с сайта 1.
Как я понимаю, ситуация, файлы ядра и добавленных модулей в site3 должны быть хорошими, ядро - это свежая копия, а добавленные модули взяты с site2, который работает нормально. Тот settings.php файлы идентичны, за исключением базы данных, настройки имени пользователя и пароля совпадают с именем отдельной базы данных. Единственный разница заключается в самой базе данных. Может ли кто-нибудь помочь определить таблицы, в которых могут быть настройки, которые могут вызвать эту проблему?
1 answers
Это не проблема с таблицами, это проблема с именем базы данных.
Drupal успешно подключается к вашему серверу баз данных, но не находит базу данных с именем mydevelopmentDB
(которое должно быть именем базы данных, указанной в settings.php).
Чтобы изолировать проблему:
-
Откройте phpMyAdmin для соответствующего сервера и выполните следующий запрос:
SELECT * FROM mydevelopmentDB.users
Если вы получите аналогичную ошибку, то вы знаете, что у вас определенно есть неправильное имя базы данных.
- Убедитесь, что имя базы данных на сервере соответствует регистру имени базы данных в settings.php . В зависимости от ваших настроек MySQL сервер может применять или не применять учет регистра в именах баз данных/ таблиц.