2011-03-25 4 views
0

웹 사이트를 위해 뭔가를하려합니다. 구체적으로 말하자면, 가동 시간을위한 스크립트를 작성하려고합니다.서버 가동 시간 스크립트

나는 테이블에서 퍼센트를 읽는 독자 인 독자가있다.

답변

0

이것은 매우 효율적인 관계형 데이터베이스를 사용하는 방법이 아닙니다.

CREATE TABLE `servers` (
    `srv_id` INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, 
    -- Additional Fields Omitted here. 
    PRIMARY KEY (`srv_id`) 
) 
ENGINE = InnoDB; 
CREATE TABLE `stats` (
    `stat_id` INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, 
    `srv_id` INTEGER UNSIGNED NOT NULL, 
    `date` TIMESTAMP NOT NULL, 
    `uptime` INTEGER UNSIGNED NOT NULL, 
    PRIMARY KEY (`stat_id`) 
) 
ENGINE = InnoDB; 

당신은 당신이 원하는대로 당신이 원하는만큼 서버에 대해, 많은 조치를 기록한 다음에 SQL을 사용할 수있는이 방법 : 나는 대신, 다음, (적어도 SQL 측에) 제안 이전 콘텐츠를 삭제하거나 이전 콘텐츠를 유지하고 WHERE 인수를 사용하여 이러한 통계를 표시하는 인터페이스에 사용 된 데이터를 필터링하십시오.

+0

흠 ... 확인 감사합니다 :) 여기 –

0
 $day = int(strftime("%j") % 5); 
     $key = 'day' . $day; 
     if($row[$key] == 0) 
     { 
      if($checkls && $checkgs) //if server is online update the percent 
       mysql_query("UPDATE s_stats SET ${key}=".($stats_row[$key] + 0.5)." WHERE srv_id=".$r[id]." ") or die(mysql_error()); //every 7.2 minutes add 0.5 percent 
      else echo "error day $day"; 
     } 
+0

네,하지만 문제는 .. 모든 서버가 2, 3이 될 수도 주먹 일 ... INT (의 strftime ("%의 J") % 5)에서 시작한다, 처음으로 4 번 .. –