Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHPBB] Optymalizacja tabel - poprawka w kodzie
Forum PHP.pl > Forum > PHP
maly_pirat
Chciałbym zastosować rozwiązanie dot. optymalizacji tabel phpBB - oczywiście bez zbędnych wpisów w Panelu admina (co ile dni ma się optymalizować) czy też bez wpisów (nowych kolumn) SQL.
Więc mam taki kod, i chciałbym aby on co dziennie np. o 12:00 optymalizował tabele.

  1. <?php
  2. if ( $board_config['tables_last_optimize'] < (CR_TIME - ($board_config['tables_optimize_interval'] * 24 * 3600)) )
  3. {
  4.    if ( $result = $db->sql_query('SHOW TABLE STATUS') )
  5.    {
  6.        $tables = $db->sql_fetchrowset($result);
  7.  
  8.        for ( $i = 0, $size = sizeof($tables); $i < $size; $i++ )
  9.        {
  10.            if ( $tables[$i]['Data_free'] != 0 )
  11.            {
  12.                $for_optimize[] = $tables[$i]['Name'];
  13.            }
  14.        }
  15.  
  16.        if ( !empty($for_optimize) )
  17.        {
  18.            $tables = implode(',', $for_optimize);
  19.        
  20.            if ( !$db->sql_query('OPTIMIZE TABLE ' . $tables) )
  21.            {
  22.                message_die(GENERAL_ERROR, 'Could not optimize tables', '', __LINE__, __FILE__, $sql);
  23.            }
  24.        }
  25.  
  26.        update_config('tables_last_optimize', CR_TIME);
  27.    }
  28. }
  29. ?>
wookieb
cron...
maly_pirat
No już mnie nakierowałeś, dzięki. Pytanko mam jeszcze jedno odnośnie tego crona.

Plik z cronem rozumiem że mam wrzucać do public_html - tak?
Jeżeli chce aby cron wykonywał się codziennie np. o 14:30 to nazwa crona musi być:

cron-1430.php

Zgadza się?
Riklaunim
tak przy okazji: wiele to ci nie da, chyba że dużo tekstu dodajesz i usuwasz - wtedy będzie porządkowało rozmieszczenie danych.
erix
Cytat
Jeżeli chce aby cron wykonywał się codziennie np. o 14:30 to nazwa crona musi być:

cron-1430.php

Zgadza się?

Nie: http://www.sitepoint.com/article/introducing-cron/
sowiq
Cytat(maly_pirat @ 6.12.2008, 16:04:48 ) *
Plik z cronem rozumiem że mam wrzucać do public_html - tak?
Jeżeli chce aby cron wykonywał się codziennie np. o 14:30 to nazwa crona musi być:

cron-1430.php
Jeżeli masz hosting na home.pl to tak. Tam się to tak stosuje. ( http://home.pl/pomoc/funkcje/cgi/cron )
Na innych serwerach raczej będziesz musiał sam skonfigurować CRON'a - powinno to być gdzieś w panelu zarządzania Twoim kontem na serwerze (jeżeli masz taką opcję)

@erix,
Twoja odpowiedź jest adekwatne dla posiadacza dedyka smile.gif A w tym przypadku raczej wątpię, żeby autor takowy serwer posiadał.
erix
Cytat
Twoja odpowiedź jest adekwatne dla posiadacza dedyka

Nie tylko. winksmiley.jpg Nie pamiętam, jak jest w przypadku cPanel, ale w DirectAdminie składnia jest podobna, jak w przypadku Uniksa. winksmiley.jpg
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.