CLI 또는 phpMyAdmin을 통해 MySQL에 연결할 수 없지만 WordPress는 여전히 정상적으로 연결됩니다.

사용자 236192

질문에 대해 연락을 취한 것은 이번이 처음입니다. 정말 당황 스럽습니다.

나는 리눅스 서버 (Ubuntu)에서 mysql을 실행하고 있으며 오늘 아침 phpMyAdmin에 로그인을 시도했습니다. 로그인 할 수 없다는 오류를 받았습니다. 그래서 명령 줄로 가서 mysql -u root -p암호를 입력하고 암호를 입력하라는 메시지가 표시되면 올바르게 입력했습니다. 그런 다음 다음 오류가 발생했습니다.

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

이상한 점이 있습니다.

명령 줄에서 mysql이나 phpMyAdmin을 통해 연결할 수 없지만 모든 WordPress 사이트가 제대로 작동합니다. 그러나 WP 사이트의 자격 증명 중 하나로 로그인하려고하면 위와 같은 종류의 오류가 발생합니다.

나는 확인 etc/mysql/my.cnf하고 보았다 : bind-address = 127.0.0.1. 나는 이것을 주석 처리하고 mysql을 다시 시작하려고 시도했지만 운이 없다. bind-address를 localhost로 변경하려고 시도했지만 여전히 운이 없습니다. 지금은 bind-address = 127.0.0.1. 이것은 두 번째 Linode에 대해이 설정과 똑같은 개인 IP / 네트워킹 설정을 가진 동일한 설정입니다 (동시에 두 고정 IP를 설정했습니다).하지만 다른 서버는 정상적으로 작동합니다 (MySQL에 연결할 수 있음). ) 그리고 이것은 단지 나를 싫어하는 것 같습니다.

그래서 큰 질문은 무엇이 mysql이 더 이상 연결을 허용하지 않는지, 왜 내 WordPress 사이트가 여전히 자격 증명을 사용할 수 있습니까 (하지만 phpmyadmin이나 명령 줄을 통해 할 수 없는지), 이것이 나를 피하는 것을 어떻게 방지 할 수 있습니까? 미래에?

관련 세부 정보 :

  • 이틀 전에이 linode에 개인 IP를 설정했습니다.

  • cat /etc/hosts localhost를 포함하지 않습니다

    127.0.0.1 localhost.localdomain localhost

  • ping localhost 결과를 반환합니까?

    ping localhost
    PING localhost.localdomain (127.0.0.1) 56(84) bytes of data.
    64 bytes from localhost.localdomain (127.0.0.1): icmp_req=1 ttl=64 time=0.066 ms
    64 bytes from localhost.localdomain (127.0.0.1): icmp_req=2 ttl=64 time=0.062 ms
    
  • 최근 두 달 만에 처음으로 재부팅했습니다.

  • 루트 암호가 자동으로 변경된 것 같습니다 ...

도와 주셔서 정말 감사합니다.

Rudu

mysql을 설정하는 동안 이와 비슷한 것을 발견했습니다. MySQL은 고려하지 않습니다 localhost127.0.0.1(종종 같은 의미를 사용하여 문서에도 불구하고) 같은 접근 할 수없는 주소로. 트릭은 귀하의 경우 연결하여 연결할 수있는 사람과 방법을 변경하는 것입니다. 루프백 IP에 명시 적으로 연결하려고합니다.

mysql -h 127.0.0.1 -u root -p

그래도 작동하지 않으면 워드 프레스 설정을 살펴보고 호스트, 포트, 사용자 이름 및 암호 설정을 찾아야합니다. 좋은 소식은 워드 프레스가 작동한다면 들어갈 수있는 방법이 있다는 것입니다.

연결되면 문제는 use mysqlusers 테이블 의 mysql 데이터베이스 ( )에 있습니다. 액세스 제어는 127.0.0.1/ localhost/ external IP 중 하나만 허용 하거나 연결을 엉망으로 만드는 익명 사용자 중 하나입니다 .

익명 사용자가 있는지 확인하려면 :

SELECT User,host from mysql.user;

빈 @ localhost 등이있는 것이 보이면 그게 전부입니다. 제거:

DELETE From mysql.user where User='' and host='localhost';
FLUSH PRIVILEGES;

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

Related 관련 기사

뜨겁다태그

보관