DB 두개 사용하기
본문
이전에도 관련하여 질문 올린 적이 있습니다.
그누 복제 사이트 3개 운영 중인데, 그 중 하나의 DB 테이블을 3개에서 공용으로 사용하려 합니다.
현재 목록 보기 가능하게 되어 있으나, 회원 DB가 다른 관계로 상세보기나 쓰기기능을 지원 못하고 있습니다.
회원 정보 DB를 불러오려면 어떻게 해야 할지 궁금합니다.
답변 3
일단 세개의 db를 편하게 사용하시려면 세개의 db를 각각 /data/dbconfig.php에 저장을 해두고 사용하면 편하긴 합니다
define('G5_MYSQL_HOST', 'localhost');
define('G5_MYSQL_USER', 'db_user');
define('G5_MYSQL_PASSWORD', 'db_pass');
define('G5_MYSQL_DB', 'db');
define('G5_MYSQL_USER2', 'db_user2');
define('G5_MYSQL_PASSWORD2', 'db_pass2');
define('G5_MYSQL_DB2', 'db_2');
define('G5_MYSQL_USER3', 'db_user3');
define('G5_MYSQL_PASSWORD3', 'db_pass3');
define('G5_MYSQL_DB3', 'db_3');
머 대충 이런식으로 저장을 해두시고
mysqli_close($connect_db);
$connect_db = sql_connect(G5_MYSQL_HOST2, G5_MYSQL_USER2, G5_MYSQL_PASSWORD2) or die('MySQL Connect Error!!!');
$select_db = sql_select_db(G5_MYSQL_DB2, $connect_db) or die('MySQL DB Error!!!');
접속하고 싶은 이름을 적으시면 되겠지요
일반적으로 DB커넥터를 2개만들어 운용하는게 가장 좋은 방법이며..
2개 동시에 다른이름으로 커넥터 유지하셔도 되고 해당 DB 테이블의 엑세스가 필요할때만 커넥터를 만들어 하는 방법이 있겠죠.
그러나 그누보드에서 제가 그런 오더를 받았다면....
하나의 DB에 그누보드 설치시 "g5_" 같은 앞에 붙는 텍스트를 달리하여 3개의 그누보드용 테이블을 만들어서
회원테이블만 3개중 하나만 사용하는 ...이런형태로 갈것 같습니다.
예를 들면
1번 사이트 g5_1_ 로 테이블생성
2번 사이트 g5_2_ 로 테이블생성
3번 사이트 g5_3_ 로 테이블생성
회원테이블 g5_1_만을 이용, 나머지는 다 따로...이런식으로 하면 되지않을까요?
답변에 이런 댓글 죄송합니다만
쿠츠님 방식대로 저도 다른 DB를 연결해야 할 일이 생겼는데
생성하신 파일과(/extend 폴더에 생성한 파일) 다른 DB를 불러올 때 선행작업 예시문을 함께 알려주실 수 있으실지 문의 드립니다.
시간이 걸리시더라도 알려주시고자 하시면 *** 개인정보보호를 위한 이메일주소 노출방지 *** 으로도 보내주셔도 감사하겠습니다.
감사합니다.