g4_login 테이블에 대하여 정보
기타 g4_login 테이블에 대하여본문
g4_login 테이블: head.sub.php에서 로그인 기록을 위해 사용하기에 head.php 가 포함된 화일이 있는 거의 모든 페이지에서 쿼리를 보내는 테이블
서버상황: 방문자가 거의 없고, 주로 본인이 자동로그인 가능하게 하고 관리자로 접속함.
테스트용 회원아이디 1개, 가입한 회원 없음.
쿼리 기록: common.lib.php 내의 sql_query 함수에서 select 구문만 모두 저장하도록 함.
g4_login 테이블에 해당하는 쿼리와 쿼리회수
2890회 : select sum(IF(mb_id<>'',1,0)) as mb_cnt, count(*) as total_cnt from g4_login where mb_id <> 'admin'
867회 : select count(*) as cnt from g4_login where lo_ip = 'IP번호' 형식
57회 : select a.mb_id, b.mb_nick, b.mb_name, b.mb_email, b.mb_homepage, b.mb_open, a.lo_ip, a.lo_location, a.lo_url
from g4_login a left join g4_member b on (a.mb_id = b.mb_id)
where a.mb_id <> 'admin'
order by a.lo_datetime desc
phpmyadmin 으로 본 login table 현황
한달 동안의 위 데이터로 미루어 보면 lo_datetime 과 mb_id 를 묶은 인덱스가 사용되는 곳이 보이질 않으며,
매번 생성, 수정, 삭제되는 데이터에 인덱스가 있어 인덱스 테이터만 늘어나게 됨니다.
저의 경우는 페이지 이동시에 인덱스 테이터가 1Byte 늘어나더군요.
실제로 login 테이블을 인덱스 없이 다시 생성하고 사용해 보니 인덱스 테이터가 3072Byte 가 되었고 페이지 이동시에도 고정됨을 볼 수 있었습니다.
가 입한 회원들이 많은 곳에서 lo_datetime, mb_id 인덱스를 많이 사용하는지 검토하여 수정하는것이 어떨지요. (단순하게 그누4.06.10 버전의 소스에서 $g4[login_table] 변수가 사용되는 곳(총7군데)을 검색해 봐도 위 인덱스가 사용되는 곳을 찾을 수가 없었습니다.)
제가 고려하지 못한부분이 있다면 지적 부탁드립니다.....
서버상황: 방문자가 거의 없고, 주로 본인이 자동로그인 가능하게 하고 관리자로 접속함.
테스트용 회원아이디 1개, 가입한 회원 없음.
쿼리 기록: common.lib.php 내의 sql_query 함수에서 select 구문만 모두 저장하도록 함.
g4_login 테이블에 해당하는 쿼리와 쿼리회수
2890회 : select sum(IF(mb_id<>'',1,0)) as mb_cnt, count(*) as total_cnt from g4_login where mb_id <> 'admin'
867회 : select count(*) as cnt from g4_login where lo_ip = 'IP번호' 형식
57회 : select a.mb_id, b.mb_nick, b.mb_name, b.mb_email, b.mb_homepage, b.mb_open, a.lo_ip, a.lo_location, a.lo_url
from g4_login a left join g4_member b on (a.mb_id = b.mb_id)
where a.mb_id <> 'admin'
order by a.lo_datetime desc
phpmyadmin 으로 본 login table 현황
한달 동안의 위 데이터로 미루어 보면 lo_datetime 과 mb_id 를 묶은 인덱스가 사용되는 곳이 보이질 않으며,
매번 생성, 수정, 삭제되는 데이터에 인덱스가 있어 인덱스 테이터만 늘어나게 됨니다.
저의 경우는 페이지 이동시에 인덱스 테이터가 1Byte 늘어나더군요.
실제로 login 테이블을 인덱스 없이 다시 생성하고 사용해 보니 인덱스 테이터가 3072Byte 가 되었고 페이지 이동시에도 고정됨을 볼 수 있었습니다.
가 입한 회원들이 많은 곳에서 lo_datetime, mb_id 인덱스를 많이 사용하는지 검토하여 수정하는것이 어떨지요. (단순하게 그누4.06.10 버전의 소스에서 $g4[login_table] 변수가 사용되는 곳(총7군데)을 검색해 봐도 위 인덱스가 사용되는 곳을 찾을 수가 없었습니다.)
제가 고려하지 못한부분이 있다면 지적 부탁드립니다.....
댓글 전체
다음번 패치에 삭제하도록 하겠습니다.
저희 사이트에서는 이미 삭제하여 사용중이네요. ㅠㅠ
저희 사이트에서는 이미 삭제하여 사용중이네요. ㅠㅠ
자체 볼드체 방지위원회에서 왔는데 이미 다녀가셨네요..
일거리 줄여 주셔서 고맙습니다. ^^
일거리 줄여 주셔서 고맙습니다. ^^