Wordpress - это очень популярная CMS с открытым исходным кодом, написанная на PHP. Его очень легко устанавливать и управлять, но иногда вы забываете свой пароль управления. Без этого вы не сможете обновить свой сайт. В этой статье я собираюсь показать вам, как легко сбросить пароль администратора WordPress, не переводя веб-сайт в автономный режим или не рискуя потерять какие-либо ценные данные.
Эта статья применима к любой ОС, если вы используете MySQL или MariaDB в качестве сервера базы данных.
Требования
Вы должны иметь доступ к вашему серверу через консоль SSH или KVM и иметь возможность запускать инструмент командной строки MySQL оттуда.
Сброс пароля администратора WordPress
Чтобы использовать инструмент командной строки MySQL, вы должны сначала войти в MySQL. Настоятельно рекомендуется использовать учетные данные WordPress SQL, а не корневую учетную запись MySQL. Поступая так, вы можете быть уверены, что если что-то пойдет не так, по крайней мере, вы случайно не повредите другие базы данных на сервере.
Учетные данные WordPress SQL хранятся в файле, который называется wp-config.php
корневым каталогом вашего сайта.
Нам нужны следующие строки внутри wp-config.php
файла:
define('DB_NAME', 'myWordpressDB');
define('DB_USER', 'myUserName');
define('DB_PASSWORD', 'aVeryStrongPassword');
$table_prefix = 'wp_';
Теперь вы можете использовать эту информацию для входа в MySQL и внесения необходимых изменений. Прежде чем идти дальше, мы собираемся сделать полную резервную копию базы данных:
mysqldump -umyUserName -paVeryStrongPassword myWordpressDB | gzip -9 > myWordpressDB.sql.gz
Теперь войдите в MySQL:
mysql -umyUserName -paVeryStrongPassword
Список доступных баз данных:
show databases;
+--------------------+
| Database |
+--------------------+
| myWordpressDB |
| information_schema |
+--------------------+
Выберите базу данных WordPress:
use myWordpressDB;
Перечислите всех пользователей WordPress вместе с их ID, именем пользователя и зашифрованным паролем:
SELECT ID, user_login, user_pass FROM wp_users;
+----+------------+------------------------------------+
| ID | user_login | user_pass |
+----+------------+------------------------------------+
| 1 | admin | $P$B02fIYCZKcVrKFGpPqio80Wh7A.7NK/ |
| 2 | alex | $P$BCFybroBJDFuv1oQdLIWcNp8jMCmsl1 |
+----+------------+------------------------------------+
ID 1
принадлежит основному администратору WordPress и имеет самые высокие привилегии в программном обеспечении. Из-за этого мы сбросим его пароль:
UPDATE wp_users SET user_pass=MD5('YourNewStrongPassword') WHERE ID = 1;
Теперь, если вы снова перечислите пользователей, вы увидите, что у пользователя 'admin' есть новый зашифрованный пароль:
SELECT ID, user_login, user_pass FROM wp_users;
+----+------------+------------------------------------+
| ID | user_login | user_pass |
+----+------------+------------------------------------+
| 1 | admin | daa0f3ff755e00a95b8dd93dfb476936 |
| 2 | alex | $P$BCFybroBJDFuv1oQdLIWcNp8jMCmsl1 |
+----+------------+------------------------------------+
Установка WordPress PasswordHash
по умолчанию использует для шифрования пароля пользователя, который хэширует его с 8 проходами MD5. Тем не менее, по умолчанию также подходит хеш MD5, поэтому этот метод работает.
Теперь вы можете войти в консоль администратора WordPress с новым паролем.