- Вопрос или проблема
- ПРОБЛЕМА
- ДЕТАЛИ МОЕЙ СИСТЕМЫ
- ИЗВЕСТНОЕ МНЕ
- ЧТО Я УЖЕ ПОПЫТАЛСЯ
- РЕЗУЛЬТАТЫ
- Ответ или решение
- Решение проблемы «Невозможно выбрать базу данных» при установке WordPress на WAMPServer
- Фон проблемы
- Шаг 1: Проверка существования базы данных
- Шаг 2: Проверка прав доступа пользователя
- Шаг 3: Проверка конфигурационного файла WordPress
- Шаг 4: Проверка соединения с MySQL
- Шаг 5: Тестирование с новой базой данных
- Общие рекомендации
- Заключение
Вопрос или проблема
ОБНОВЛЕНИЕ: 2020-07-12 Я попытался установить на Windows 10 64-бит, и установка WordPress завершилась неудачей с той же ошибкой базы данных, что и на Windows 7. Это говорит мне о том, что либо в WAMPServer 3.2.0 есть ошибка, либо в WordPress 5.4.2., поскольку проблема возникает на обеих операционных системах.
ПРОБЛЕМА
Я устанавливаю WordPress на WAMP в качестве локального сервера разработки, установка WordPress завершилась неудачей, поэтому конфигурационный файл не создается.
Невозможно выбрать базу данных
Мы смогли подключиться к серверу базы данных (что означает, что ваше имя пользователя и пароль в порядке), но не смогли выбрать базу данных wp_ehw_20200627.
Вы уверены, что она существует?
Есть ли у пользователя root разрешение использовать базу данных wp_ehw_20200627?
На некоторых системах имя вашей базы данных предваряется вашим именем пользователя, так что это было бы что-то вроде username_wp_ehw_20200627. Может ли это быть проблемой?Если вы не знаете, как настроить базу данных, вам следует связаться с вашим хостингом. Если ничего не поможет, вы можете найти помощь на форумах поддержки WordPress.
ДЕТАЛИ МОЕЙ СИСТЕМЫ
- Windows 7 Ultimate 64-бит
- WAMPServer 3.2.0
- WordPress 5.4.2
ИЗВЕСТНОЕ МНЕ
- База данных существует, и я могу выполнять SQL-команды в phpMyAdmin.
- Мой пользователь – root
- Хост – localhost
- База данных – wp_ehw_20200627
- root имеет все привилегии на базу данных (как подтверждено в phpMyAdmin)
ЗАМЕТКА: Я задавал похожий вопрос около года назад, но этот вопрос значительно отличается тем, что в предыдущем вопросе WordPress уже был установлен, тогда как в данном случае он не установлен.
ЧТО Я УЖЕ ПОПЫТАЛСЯ
Подозревая, что могут быть проблемы с именованием базы данных, я попытался создать различные пустые базы данных для установки с разными именами. Успех здесь оценивается по тому, был ли создан файл config.php. Вот некоторые из имен и результатов, которые я попробовал:
- wp_ehw_2020627 – не удалось
- wpehw20200704 – не удалось
- test – УСПЕХ!
Используя созданную мной базу данных с именем “test”, я впервые получил это сообщение об УСПЕХЕ:
“Все в порядке, спарки! Вы прошли эту часть установки. WordPress теперь может общаться с вашей базой данных. Если вы готовы, время для…
Запустите установку”
Этот результат был обнадеживающим, но это не было то имя базы данных, которое я хотел. Поскольку я подозревал, что проблема кроется в длине имени базы данных (в символах), я продолжил тестирование с другими именами, каждый раз уменьшая их размер.
- ehw200704 – не удалось
- 200704 – не удалось
Наконец, так как “test” было единственным именем, которое сработало до сих пор, я выбрал еще одно простое четырехбуквенное слово, чтобы проверить, является ли четыре магическим числом.
- john – не удалось
СТРАННО ….
Я также очищал кэш Chrome между каждой попыткой установки. Я удалил конфигурационный файл после успешной установки.
РЕЗУЛЬТАТЫ
Только “test” создал конфигурационный файл.
Я очень озадачен этими результатами.
Любая помощь будет оценена.
Сначала вы на 100% уверены, что у вас есть только один сервер MySQL, к которому могут подключаться как ваш PHPMyAdmin, так и WAMP?
Если да, то самый простой способ решить это – начать с чистого листа и настроить нового пользователя MySQL, новую базу данных, а затем предоставить этому новому пользователю доступ к базе данных.
Вам нужно подключиться к MySQL как пользователь root/admin (или выполнить SQL-команды через PHPMyAdmin), и любые ошибки с этими командами могут пролить свет на проблему. Вам нужно выполнять эти команды точно так, как показано, заменяя строки databasename
, username
и password
на что угодно, оставляя все остальное точно так, как показано:
CREATE DATABASE databasename;
CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON databasename.* TO 'username'@'localhost';
FLUSH PRIVILEGES;
Ссылка на документацию здесь
Если все эти команды выполнены успешно, и нет возможности, что у вас есть разные серверы mysql, тогда у вас определенно будет пользователь username
с паролем password
, который может получить доступ к базе данных databasename
. Очевидно, если вы скопировали и вставили что-то неправильно или использовали разные значения при настройке WordPress, это не сработает 😉
Надеюсь, это поможет, пожалуйста, ответьте здесь, если вы все еще застряли или если любая из этих команд дает ошибки.
Если у вас по-прежнему есть проблемы, то предоставление информации о том, как вы просматриваете свои базы данных, пользователей и разрешения, поможет в отладке.
Еще одной потенциальной проблемой является то, что пользователю DB_USER не были предоставлены привилегии к базе данных, хотя у людей с этой проблемой есть действительное имя пользователя и пароль, а также известно действительное имя базы данных.
Значения полей wp-config.php для DB_NAME, DB_USER и DB_PASSWORD могут быть правильными.
Проблема могла возникнуть, когда пользователь переименовал базу данных, что вызывает процесс DROP и CREATE для базы данных. Иногда переименование базы данных выполняется в инструменте phpMyAdmin и создает проблему.
Пользователи, у которых хостинговая служба использует cPanel, phpMyAdmin и ‘MySQL Databases’, могут просто “Добавить пользователя в базу данных” с помощью приложения “MySQL Databases” cPanel. Это приложение предоставляет выпадающие списки существующих пользователей и баз данных. В процессе ассоциации пользователя с базой данных также можно назначить права пользователя на базу данных. Выбор “Все” привилегии будет работать, если это то, что желаемо.
Ответ или решение
Решение проблемы «Невозможно выбрать базу данных» при установке WordPress на WAMPServer
Ошибка «Can’t Select Database» при установке WordPress на локальном сервере WAMP может вызвать множество вопросов, особенно если вы уверены, что всё настроено правильно. Давайте рассмотрим основные причины возникновения этой проблемы и пути их устранения.
Фон проблемы
Согласно предоставленной информации, вы сталкиваетесь с ошибкой на системах Windows 7 и Windows 10 с WAMPServer 3.2.0 и WordPress 5.4.2. Ошибка возникает из-за того, что установщик WordPress не может выбрать базу данных, несмотря на то, что доступ к MySQL для пользователя root по прежнему дважды проверен.
Шаг 1: Проверка существования базы данных
Убедитесь, что база данных действительно существует. Выказание «Are you sure it exists?» подразумевает, что установщик WordPress не находит указанную базу данных. Для проверки выполните следующие шаги:
- Откройте phpMyAdmin с помощью панели управления WAMP.
- Убедитесь, что база данных
wp_ehw_20200627
присутствует в списке баз данных.
Если база данных отсутствует, создайте её через phpMyAdmin:
CREATE DATABASE `wp_ehw_20200627`;
Шаг 2: Проверка прав доступа пользователя
Существует вероятность, что пользователь root
не имеет нужных прав на использование базы данных. Чтобы проверить и установить права, выполните следующие действия в phpMyAdmin:
- Перейдите на вкладку "Пользователи".
- Найдите пользователя
root
и убедитесь, что у него есть все необходимые права на базу данныхwp_ehw_20200627
или создайте нового пользователя с полными правами:
CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'mypassword';
GRANT ALL PRIVILEGES ON wp_ehw_20200627.* TO 'myuser'@'localhost';
FLUSH PRIVILEGES;
Шаг 3: Проверка конфигурационного файла WordPress
Проверьте, правильно ли указаны параметры подключения к базе данных в файле wp-config.php
. Эти параметры включают:
DB_NAME
: должен соответствовать имени вашей базы данных (wp_ehw_20200627
)DB_USER
: имя пользователя (root или вашего нового пользователя)DB_PASSWORD
: пароль пользователя
Пример конфигурации:
define('DB_NAME', 'wp_ehw_20200627');
define('DB_USER', 'root'); // или имя вашего нового пользователя
define('DB_PASSWORD', 'yourpassword'); // пароль к пользователю
define('DB_HOST', 'localhost');
Шаг 4: Проверка соединения с MySQL
Убедитесь, что сервис MySQL запущен и WAMP подключается к правильному серверу:
- Убедитесь, что и phpMyAdmin, и WordPress используют одинаковые соединения к MySQL.
- Проверьте, не запущено ли несколько экземпляров MySQL на одной машине, так как это может вызвать конфликты.
Шаг 5: Тестирование с новой базой данных
Как вы уже заметили, создание новой базы данных с именем test
сработало. Это может быть связано с тем, что в именах баз данных могут быть символы, которые MySQL не обрабатывает корректно.
Попробуйте следующие названия для вашей базы данных и проверьте их работоспособность:
ehw202007
wp_ehw_202007
Общие рекомендации
- Постоянно очищайте кэш браузера, чтобы избежать кэширования результатов установки.
- Убедитесь, что все ваше программное обеспечение (WAMP, MySQL, PHP) обновлено до последних версий для избежания возможных несовместимостей.
Заключение
Если после всех действий проблема остаётся нерешённой, возможно, это связано с неявной ошибкой в WAMPServer или WordPress. В этом случае рекомендуется ознакомиться с последними обновлениями документации или обратиться к форумам сообщества WordPress.
Используя перечисленные шаги, вы сможете устранить ошибку «Can’t Select Database» и успешно установить WordPress на вашем локальном сервере. Если у вас есть дополнительные вопросы, не стесняйтесь спрашивать!