
Drupal이 구성된 이전 VM이 있는데 관리자 비밀번호가 기억나지 않습니다. 비밀번호 복구 프로세스에서 비밀번호 재설정 링크를 보냈지만 생성된 페이지에는 "액세스 거부됨"이라는 메시지가 표시되었습니다.
나는 그런 다음 시도했다MySQL에서 Drupal 사용자 테이블을 직접 편집합니다.Salt 모듈이 설치되어 해시가 유효하지 않다는 사실을 제외하면 이는 효과가 있었을 것입니다.
여기서 어디로 가야할지 모르겠습니다. 어떤 아이디어가 있나요?
답변1
이미 문제를 해결한 것 같지만 어쨌든 여기에 답이 있습니다. mysql 데이터베이스에 연결하고 다음을 수행합니다.
- name='salt'인 변수에서 값을 선택합니다.
- 사용자 업데이트 설정 pass=md5('newpassSALT') 여기서 uid=1; 여기서 SALT는 위에서 언급한 값입니다.
비밀번호는 "newpass"로 재설정되어야 합니다.
답변2
MD5('newpassSALT')
나는 에 설명된 방법 으로는 운이 없었습니다.수락된 답변, 여기 저에게 도움이 된 것이 있습니다. 다음 값을 사용자 고유의 값으로 대체해야 합니다.
/var/www/path/to/drupal
: Drupal이 설치된 위치mynewpassword
: 원하는 비밀번호drupaluser
: drupal 데이터베이스 사용자drupaldb
:드루팔 데이터베이스 스키마
단계별:
# cd /var/www/path/to/drupal
# scripts/password-hash.sh "mynewpassword"
password: mynewpassword hash: $S$C/mWw8UGcAyCwLDOiqRBOShJl8w2vVLsSzYvqCMuAg/LSncU16Iy
# mysql -u drupaluser -p
enter your password:
mysql> use drupaldb
Database changed
mysql> update users set pass='$S$C/mWw8UGcAyCwLDOiqRBOShJl8w2vVLsSzYvqCMuAg/LSncU16Iy' where uid=1;
Query OK, 1 row affected (0.01 sec)
Rows matched: 1 Changed: 1 Warnings: 0
mysql> commit;
Query OK, 0 rows affected (0.00 sec)
답변3
귀하의 drupal 시스템에 작동하는 관리자가 아닌 두 번째 계정이 있습니까? 예정된 비밀번호도 사용하고 있나요? mysql 테이블을 직접 편집하고 알려진 계정의 비밀번호를 관리자 계정으로 복사할 수 있습니까?
답변4
잘못된 데이터베이스를 종료했습니다! mysql.user 테이블은 특히 mysql 계정이 Drupal 데이터베이스에 액세스하기 위한 것입니다. drupal이 "액세스 거부됨"이라고 표시되면 아마도 해당 데이터베이스에 대한 액세스 권한이 있고 drupal의 관리자 비밀번호를 잊어버린 것입니다. 이를 위해 phpMyAdmin을 사용하는 것이 좋습니다.
1. Login to phpMyAdmin
2. Select the database which Drupal use from the drop-down menu on the left.
4. Click on the SQL tab.
5. In the text field on the page type the following text:
update users set pass=md5('NEWPASS') where uid = 1;
uid 1이 admin이면 이 쿼리에서 uid를 변경하여 다른 사용자가 사용하는 비밀번호를 변경할 수 있습니다.