Error establishing a database connection(데이터베이스 연결을 구축하는 중 오류입니다) 오류 해결 방법

워드프레스 정보를 제공하는 블로그 Avada 2019. 6. 15. 22:31 • 댓글:

워드프레스 사이트에서 'Error establishing a database connection(데이터베이스 연결을 구축하는 중 오류입니다)' 메시지가 표시되면서 워드프레스에 접속하지 못하는 문제가 발생하는 경우가 있습니다.

Error establishing a database connection 오류 해결 방법

이런 오류는 보통 DB 정보가 잘못될 경우에 나타납니다.

이 오류 메시지는 워드프레스가 업데이트되면서 "데이터베이스 연결 중 오류"에서 "데이터베이스 연결을 구축하는 중 오류입니다"로 번역이 변경되었습니다. 하지만 직역으로 번역이 바뀌면서 표현이 어색하게 되었습니다.

Error establishing a database connection(데이터베이스 연결을 구축하는 중 오류입니다) 오류가 발생하는 경우 해결 방법

DB 정보 체크하기

먼저 DB 정보가 정확한지 확인하도록 합니다. wp-config.php 파일을 열고 다음 정보를 확인합니다.

/** The name of the database for WordPress */
define( 'DB_NAME', 'database_name_here' );

/** MySQL database username */
define( 'DB_USER', 'username_here' );

/** MySQL database password */
define( 'DB_PASSWORD', 'password_here' );

/** MySQL hostname */
define( 'DB_HOST', 'localhost' );

DB_HOST는 블루호스트, 사이트그라운드, 카페24 등 일반적으로 localhost이지만, 웹호스팅에 따라 DB IP 주소를 입력해야 하는 경우도 있습니다.

예를 들어, 가비아에서는 localhost 대신 DB IP 주소를 입력해야 합니다. DB IP 주소를 모르는 경우 가비아에 연락하면 알려줍니다.

정보를 정확하게 입력해도 연결이 안 되는 경우, phpMyAdmin에 접속하여 DB에 제대로 접속이 되는지 확인해보도록 합니다.

손상된 DB 복구하기

/wp-admin/에서도 동일한 오류가 발생하는지 확인하도록 합니다. 만약 /wp-admin/에서 다른 오류 메시지가 표시되는 경우에는 DB를 백업 받아놓은 후에 다음 라인을 wp-config.php 파일의 ‘That’s all, stop editing! Happy blogging’ 바로 앞에 추가하도록 합니다.

define('WP_ALLOW_REPAIR', true);

그런 다음 http://www.example.com/wp-admin/maint/repair.php에 접속하도록 합니다.

위의 같은 화면이 표시되면 '데이터베이스 복구'를 클릭하여 손상된 DB 복구를 시도하도록 합니다. 이 작업을 통해 문제가 해결될 수도 있고, 그렇지 않을 수도 있습니다.

database user 권한이 충분한지 확인

phpMyAdmin에 접속이 가능하고 DB 정보가 정확한 상태에서도 'Error establishing a database connection' 오류가 발생하면 DB 사용자 권한이 충분한지 확인해볼 수 있습니다.

FTP에 접속하여 루트 폴더에 dbconnectiontest.php 파일을 하나 만들고 다음 내용을 붙여넣도록 합니다.

<?php
$link = mysqli_connect('localhost', 'username', 'password');
if (!$link) {
die('Could not connect: ' . mysqli_error());
}
echo 'Connected successfully';
mysqli_close($link);
?>

여기에서 'localhost'는 DB_HOST로 보통 'localhost'이지만 가비아 등 일부 웹호스팅에서는 DB IP 주소로 바꾸어줍니다. username, password에 정확한 정보를 입력합니다.

그런 다음 브라우저 주소란에 www.example.com/dbconnectiontest.php를 입력하여 접속해보면 성공 혹은 실패 메시지가 표시됩니다.

성공 메시지가 표시되면 DB에 제대로 접속이 되는 상황입니다. 그러므로 다른 요인에 의해 문제가 발생하고 있는 것입니다.

만약 실패 메시지가 표시되면 서버에 문제가 있는 것입니다. Could not connect 메시지가 표시되면 웹호스팅 업체에 연락하도록 합니다. (혹은 DB 정보 자체가 잘못되어도 실패 메시지가 표시됩니다.)

 

마치며

Error establishing a database connection 에러가 발생하면 먼저는 DB 정보가 정확한지 확인하도록 합니다. 최근에 DB 비번을 변경했다면 DB 변경을 갱신해주면 문제가 해결될 것입니다.

DB 정보를 잘 모르시면 웹호스팅 업체에 문의하여 확인하시기 바랍니다. 웹호스팅 업체 사이트에 로그인하면 DB 정보를 확인할 수도 있을 것입니다.

참고: