MySQL Unable to connect to localhost 해결

Unable to connect to localhost” 오류는 다양한 상황에서 발생할 수 있으며, 그 원인도 여러 가지입니다.

이 오류는 주로 네트워크 연결 문제, 서비스 또는 애플리케이션이 실행되지 않고 있을 때, 또는 설정 문제 등으로 인해 발생합니다.

MariaDB 서비스 실행 여부 확인

    서비스가 제대로 실행되고 있는지 확인 및 서비스 중지되어 있으면 실행.

    sudo systemctl status mariadb
    sudo systemctl start mariadb
    데이터베이스 서비스 시작 여부 확인과 재시작


    방화벽 설정 확인

    3306 포트가 정상적으로 열려있는지 확인

    sudo firewall-cmd --zone=public --query-port=3306/tcp

     방화벽 설정으로 인해 외부 접속이 차단되었을 수 있습니다. DB의 기본 포트인 3306을 허용하도록 설정

    sudo firewall-cmd --permanent --zone=public --add-port=3306/tcp
    sudo firewall-cmd --reload
    데이터베이스 방화벽 상태 확인 및 포트오픈



    사용자 및 권한 설정

    Workbench에서 접속하기 위한 사용자가 MariaDB에 올바르게 생성되었는지, 그리고 해당 사용자가 원격 접속을 할 수 있는 권한을 가지고 있는지 확인

    MariaDB 쉘에 접속 후, 원격 접속을 허용할 사용자를 생성하거나 권한을 부여

    sudo mysql -u root -p
    CREATE USER 'username'@'%' IDENTIFIED BY 'password';
    GRANT ALL PRIVILEGES ON *.* TO 'username'@'%' WITH GRANT OPTION;
    FLUSH PRIVILEGES;

    %는 모든 호스트에서 접속을 허용한다는 의미입니다. 보안에 취약하므로 특정 IP로 지정하여 권한을 부여합니다.

    GRANT ALL PRIVILEGES ON *.* TO 'username'@'host ip' IDENTIFIED BY 'password' WITH 
    데이터베이스 사용자 권한 부여하기 특정 아이피 접속 권한 부여

    sudo systemctl restart mariadb <– 재시작 명령어 사용


    By Low ahn

    답글 남기기

    이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다