BOARD

자료·레퍼런스

PHP 데이터베이스 연결을 위한 dbconn.php 설정 가이드

페이지 정보

profile_image
작성자 최고관리자
댓글 0건 조회 29회 작성일 26-09-24 07:21

본문

PHP 데이터베이스 연결을 위한 dbconn.php 설정 가이드

그누보드 환경 및 일반 PHP 프로젝트에서 데이터베이스 접속 정보를 중앙에서 관리하기 위한 공통 설정 파일(dbconn.php) 생성 방법과 최신 mysqli 연결 방식을 알아봅니다.

dbconn.php 설정 정보

데이터베이스 연결을 위한 공통 설정 파일(dbconn.php)을 생성할 때는 접속할 데이터베이스에 대한 기본 정보를 변수로 지정해야 합니다.

필요한 DB 접속 정보 항목

  • DB 호스트명 / IP: MySQL 서버가 실행 중인 서버의 주소로, 로컬 서버일 경우 localhost를 입력합니다.
  • 사용자명(아이디): MySQL에 접속할 사용자 계정을 입력합니다.
  • 비밀번호(암호): 해당 사용자 계정의 비밀번호를 입력합니다.
  • 데이터베이스 이름(스키마명): 사용할 데이터베이스 이름을 입력합니다.

설정 예시

<?php
$mysql_host = "localhost";
$mysql_user = "아이디";
$mysql_password = "비밀번호";
$mysql_db = "네임";
?>

최신 PHP 환경에서 mysqli_connect를 사용하여 데이터베이스를 연결하는 방법은 다음과 같습니다. 보안과 호환성을 위해 기존의 mysql_connect 대신 아래와 같은 방식을 권장합니다.

1. 데이터베이스 연결 코드 예제

dbconn.php 파일에 아래 코드를 작성하여 데이터베이스 접속 정보를 설정합니다.

<?php
$host = 'localhost';
$username = '사용자명';
$password = '비밀번호';
$database = '데이터베이스명';
$port = 3306; // 기본 포트

// mysqli_connect를 이용한 연결
$conn = mysqli_connect($host, $username, $password, $database, $port);

// 연결 오류 처리
if (!$conn) {
 die('MySQL 연결 실패: '. mysqli_connect_error());
}

// UTF-8 문자셋 설정
mysqli_set_charset($conn, 'utf8mb4');
?>

2. 주요 사항

  • 오류 처리: mysqli_connect_error() 함수를 사용하여 연결 실패 시 구체적인 에러 메시지를 확인할 수 있습니다.
  • 문자셋 설정: mysqli_set_charset($conn, 'utf8mb4')를 통해 데이터베이스와 PHP 간의 인코딩을 UTF-8로 통일하여 한글 깨짐 현상을 방지합니다.
  • 보안: 접속 정보가 포함된 파일은 웹 서버의 공개 디렉토리 외부에 배치하거나, 환경 변수를 활용하여 외부 노출을 방지하는 것이 좋습니다.

dbconn.php 파일 include 방법

데이터베이스 접속 정보가 담긴 설정 파일을 생성한 후, 데이터베이스 작업이 필요한 각 웹페이지에서 파일을 불러와(include) 공통으로 사용할 수 있습니다.

  • include 사용 권장: 데이터베이스 연결이 필요한 페이지마다 매번 접속 코드를 작성하는 대신, 공통 설정 파일을 생성해두고 추후 include하여 사용하면 체계적인 관리가 가능합니다.
  • 적용 방법: 데이터베이스 연동 및 작업이 필요한 각 웹페이지의 코드 상단에 include 문을 작성하여 dbconn.php 파일을 불러옵니다.

파일 경로 지정

  • 프로젝트 디렉토리 구조에 맞추어 상대 경로 또는 절대 경로($_SERVER['DOCUMENT_ROOT'] 등)를 조합하여 dbconn.php 파일을 정확히 지정해 주어야 합니다.

그누보드 외부 접속 DB 설정 방법

그누보드 환경에서 기본 생성되는 설정 파일 대신 외부 데이터베이스 서버를 연결하거나 설정을 변경하려면, 데이터베이스 관련 정보를 담고 있는 설정 파일(dbconfig.php)에서 접속 정보를 수정해야 합니다.

1. 설정 파일 위치 및 확인

  • 그누보드 설치 경로 내의 dbconfig.php 파일에서 DB 호스트, 사용자, 비밀번호, DB명을 관리합니다.
  • 보안상의 이유로 기본 dbconfig.php 파일명 대신 다른 이름(예: secret.php)을 사용할 경우, config.php 파일의 G5_DBCONFIG_FILE 정의를 통해 파일명을 변경할 수 있습니다.

2. 외부 DB 접속 정보 변경 항목

외부 DB 접속을 구성하거나 변경할 때는 설정 파일 내에 다음 항목들을 지정합니다.

  • DB 호스트/IP: define('G5_MYSQL_HOST', '외부DB IP');와 같이 외부 데이터베이스 서버의 주소를 입력합니다.
  • 계정 ID: define('G5_MYSQL_USER', '계정ID');를 통해 접속할 사용자 계정을 설정합니다.
  • 비밀번호 및 DB명: 사용자 비밀번호(G5_MYSQL_PASSWORD)와 연결할 데이터베이스명(G5_MYSQL_DB)을 알맞게 수정합니다.

3. 다음 행동 및 주의사항

  • 그누보드 폴더 전체 삭제 등으로 설정을 다시 구성해야 할 때는 도메인별 또는 외부 DB 접속 정보가 정확한지 확인 후 dbconfig.php에 반영해야 합니다.
  • 설정 변경 후 웹사이트에 정상 접속되는지 확인하고, 문제가 발생할 경우 호스팅 환경의 외부 DB 허용 IP 설정 및 포트 개방 여부를 점검해야 합니다.

상황별 판단 및 행동 가이드

  • 내 상황: PHP 환경에서 데이터베이스 연결을 위한 공통 설정 파일(dbconn.php)을 생성하려는 경우
  • 우선할 판단: 최신 PHP 버전과의 호환성 및 보안을 고려하여 오래된 mysql_connect 대신 mysqli_connect 방식을 선택하고, 필요한 DB 접속 정보(호스트, 사용자, 비밀번호, DB명)를 명확히 준비합니다.
  • 다음 행동: dbconn.php 파일에 mysqli_connect 코드를 작성하고 에러 처리(mysqli_connect_error()) 및 문자셋(utf8mb4)을 설정한 뒤, 데이터베이스 작업이 필요한 각 페이지에서 해당 파일을 include하여 공통으로 관리합니다.

실전 FAQ

  • Q. dbconn.php 파일을 만들 때 어떤 함수를 사용하는 것이 좋나요?
    • A. 원문에서 언급된 mysql_connect 방식은 매우 오래된 방식이며 최신 PHP 버전과의 호환성 주의가 필요합니다. 따라서 최신 PHP 환경에서는 mysqli_connect 함수를 사용하여 안전하게 데이터베이스에 연결하는 것을 권장합니다.
  • Q. 데이터베이스 접속 설정 파일은 어디에 포함시켜야 하나요?
    • A. 데이터베이스 연결이 필요한 페이지마다 매번 접속 코드를 작성하는 대신, 공통 설정 파일로 분리하여 각 웹페이지 상단에서 include 문을 통해 불러와 사용하면 체계적인 관리가 가능합니다.

참고자료

기타 참고자료

댓글목록

등록된 댓글이 없습니다.