mysql 데이터베이스 연결이 실패하면 어떻게 해야 할까요?

PHPz
풀어 주다: 2023-04-20 10:57:20
원래의
9350명이 탐색했습니다.

MySQL은 현재 가장 인기 있는 관계형 데이터베이스 중 하나로 안정성과 성능이 널리 인정받고 사용되고 있습니다. 그러나 때때로 MySQL 데이터베이스에 연결할 수 없는 문제가 발생하는 경우가 있습니다. 이때 원인을 분석하고 이에 대한 해결책을 강구해야 합니다.

1. MySQL 서비스가 열려 있는지 확인하세요

MySQL 연결이 실패할 경우 먼저 MySQL 서비스가 실행 중인지 확인해야 합니다. Windows 운영 체제에서는 Win+R 키를 누르고 services.msc를 입력하여 서비스 관리자를 열고 MySQL 서비스를 찾고 상태가 "실행 중"인지 확인할 수 있습니다. Linux 운영 체제에서는 명령줄에서 service mysql status를 실행하여 MySQL 서비스의 상태를 볼 수 있습니다.

MySQL 서비스가 실행되고 있지 않으면 서비스를 수동으로 시작해야 합니다. Windows 운영 체제에서는 서비스 관리자에서 MySQL 서비스를 찾아 마우스 오른쪽 버튼을 클릭하고 "시작"을 선택합니다. Linux 운영 체제에서는 명령줄에서 service mysql start를 실행하여 서비스를 시작할 수 있습니다.

2. MySQL 구성 파일을 확인하세요

MySQL 서비스가 이미 실행 중이고 포트가 사용되지 않는 경우 MySQL 구성 파일에 문제가 있을 수 있습니다. 기본적으로 MySQL 구성 파일은 /etc/mysql/my.cnf 또는 /etc/my.cnf에 있습니다. Windows 시스템에서는 MySQL 설치 디렉터리에 있습니다.

MySQL 구성 파일에 구성해야 할 매개변수가 많이 있을 수 있습니다. 다음 매개변수를 확인해야 합니다.

  1. bind-address: 바인딩된 IP 주소. "0.0.0.0"으로 설정되어 있는지 확인이 필요합니다. "127.0.0.1"로 설정되어 있으면 LAN에서는 접속할 수 없고 로컬에서만 접속이 가능합니다.
  2. port: MySQL 서비스가 수신 대기하는 포트입니다. 기본 포트는 3306입니다. 포트가 점유되어 있는지 확인할 수 있습니다. 점유되어 있는 경우 포트 번호를 수정해야 합니다.
  3. skip-networking: 이 매개변수가 "yes"인 경우 MySQL이 네트워크 연결을 지원하지 않는다는 의미이므로 "no"로 변경해야 합니다.

3. 방화벽 설정을 확인하세요

위의 두 단계를 수행했는데도 여전히 MySQL 데이터베이스에 연결할 수 없다면 방화벽이 연결을 차단하고 있는지 고려해야 합니다. 방화벽은 컴퓨터 보안을 보호하는 중요한 소프트웨어이지만 때때로 합법적인 요청을 잘못 판단할 수 있습니다.

Windows 운영 체제에서는 Win+R 키를 누르고 control.exefirewall.cpl을 입력하여 방화벽 관리 패널을 열고 MySQL이 허용되는지 확인할 수 있습니다.

Linux 운영 체제에서는 먼저 iptables 방화벽 설정이 올바른지 확인해야 합니다. 명령줄을 사용하여 iptables -L -n을 실행하면 어떤 포트에 액세스가 허용되거나 금지되는지 확인할 수 있습니다. 포트가 허용되지 않는 경우 다음 명령을 실행하여 포트를 열 수 있습니다.

iptables -A INPUT -p tcp --dport 3306 -j ACCEPT

4 MySQL 사용자 및 권한을 확인하세요.

MySQL 사용자인 경우 권한이 올바르게 설정되지 않으면 데이터베이스에 연결할 수 없게 될 수도 있습니다. 다음 명령을 통해 MySQL 사용자 목록을 볼 수 있습니다.

mysql> mysql.user에서 User를 선택합니다.

필요한 사용자가 없으면 다음 명령을 실행하여 사용자를 생성할 수 있습니다. 'password'로 식별되는 'username'@'%' 사용자를 생성하세요.

그 중 %는 사용자가 연결할 수 있는 호스트 주소에 제한이 없으며 모든 호스트를 사용하여 MySQL 데이터베이스에 연결할 수 있음을 나타냅니다. .

현재 사용자가 MySQL 데이터베이스에 연결되면 다음 명령을 실행하여 현재 사용자의 권한을 볼 수 있습니다.

mysql> show grants

사용자에게 데이터베이스에 연결할 권한이 없는 경우 다음 명령을 사용하여 사용자에게 연결 권한을 부여할 수 있습니다.

mysql>

.

에 대한 모든 권한을 'username'@'%';위 명령은 사용자에게 모든 데이터베이스 및 모든 데이터 테이블에 대한 권한을 부여합니다. .

요약:

MySQL 데이터베이스 연결 실패의 원인은 여러 가지가 있을 수 있지만, 이유가 무엇이든 먼저 올바른 약을 처방하고 문제를 하나씩 해결해야 합니다. 이러한 문제를 해결하면 결국에는 MySQL 데이터베이스에 성공적으로 연결할 수 있을 것입니다.

위 내용은 mysql 데이터베이스 연결이 실패하면 어떻게 해야 할까요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿