Willkommen Gast. Bitte Einloggen oder Registrieren
 
Sprache wählen:
 
  Last Script Version: 20

  ÜbersichtHilfeSuchenEinloggenRegistrieren  
 
Seitenindex umschalten Seiten: 1
Thema versenden Drucken
Umstellung auf Datenbank (Gelesen: 18618 mal)
hr3
Global Moderator
*****
Offline


Es gibt nichts Gutes/
außer: Man tut es. E.Kästner

Beiträge: 1126
Germany
Geschlecht: male
Umstellung auf Datenbank
14.01.11 um 18:48:28
 
Um die Aufzeichnung von Text-Dateien auf Datenbank umzustellen ist das Programm .../stat/config/setup.php auszuführen.

Die Eingaben sind selbsterklärend.

Die Datenbank muß vorhanden sein. Die Tabellen werden angelegt und in diesem Zusammenhang die Daten aus den log/log* und log/pattern* übernommen.

Wenn alles funktioniert, können die übernommenen Dateien (gesichert und) der Inhalt gelöscht werden.
Zum Seitenanfang
 
 
IP gespeichert
 
hr3
Global Moderator
*****
Offline


Es gibt nichts Gutes/
außer: Man tut es. E.Kästner

Beiträge: 1126
Germany
Geschlecht: male
Re: Umstellung auf Datenbank
Antwort #1 - 01.02.11 um 11:51:36
 
Wenn die Fehlermeldung "Sie sind nicht berechtigt die von Ihnen aufgerufene Seite db_transfer.php zu betreten." kommt, ruhig noch einmal probieren. Ggf. zwischendurch Browser beenden und Browser-Cache löschen.

Sonst überprüfen, dass die config/config.php als ANSI und nicht als UTF-8 gespeichert ist.
Zum Seitenanfang
 
 
IP gespeichert
 
hr3
Global Moderator
*****
Offline


Es gibt nichts Gutes/
außer: Man tut es. E.Kästner

Beiträge: 1126
Germany
Geschlecht: male
Re: Umstellung auf Datenbank
Antwort #2 - 01.02.11 um 12:08:35
 
Nach Umstellung der Testumgebung von XAMPP 1.7.3 (MySQL 5.1.41) auf 1.7.4 (MySQL 5.5.8) bekomme ich die Fehlermeldung

Datenbank-Tabellen wurden angelegt!
The used table type doesn't support FULLTEXT indexes

Vorher wurden alle Tabellen als MyISAM angelegt. Jetzt ist nur stat_main als InnoDB vorhanden.

Kann sicher auch in anderen Distribution, bzw Versionen auftreten, da es sich um die Vorbelegung von storage engine handelt.
Zum Seitenanfang
 
 
IP gespeichert
 
hr3
Global Moderator
*****
Offline


Es gibt nichts Gutes/
außer: Man tut es. E.Kästner

Beiträge: 1126
Germany
Geschlecht: male
Re: Umstellung auf Datenbank
Antwort #3 - 01.02.11 um 15:36:29
 
InnoDB ist seit MySQL Version 5.5 die Standard-Speicher-Engine.

Damit muß config/db_transfer.php um folgende Zeile erweitert und alle 7 CREATE-TABLE-Anweisungen ergänzt werden.

Zitat:
...
   $engine = ' ENGINE = MYISAM';
    $query = "CREATE TABLE ".$db_prefix."_main ( id INTEGER AUTO_INCREMENT PRIMARY KEY, domain INTEGER, year INTEGER, month INTEGER, week INTEGER, day INTEGER, hour INTEGER, minute INTEGER, timestamp INTEGER, ip_address TEXT, browser INTEGER, operating_system INTEGER, site_name INTEGER, referrer INTEGER, resolution INTEGER, color_depth INTEGER, country_code TEXT )".$engine;
...
    $query = "CREATE TABLE ".$db_prefix."_domain ( id INTEGER AUTO_INCREMENT PRIMARY KEY, domain TEXT )".$engine;
...
    $query = "CREATE TABLE ".$db_prefix."_browser ( id  INTEGER AUTO_INCREMENT PRIMARY KEY, browser TEXT )".$engine;
...
    $query = "CREATE TABLE ".$db_prefix."_operating_system ( id  INTEGER AUTO_INCREMENT PRIMARY KEY, operating_system TEXT )".$engine;
...
    $query = "CREATE TABLE ".$db_prefix."_referrer ( id  INTEGER AUTO_INCREMENT PRIMARY KEY, referrer TEXT )".$engine;
...
    $query = "CREATE TABLE ".$db_prefix."_resolution ( id  INTEGER AUTO_INCREMENT PRIMARY KEY, resolution TEXT )".$engine;
...
    $query = "CREATE TABLE ".$db_prefix."_site_name ( id INTEGER AUTO_INCREMENT PRIMARY KEY, site_name TEXT )".$engine;
...
Zum Seitenanfang
« Zuletzt geändert: 26.02.11 um 17:49:28 von hr3 »  
 
IP gespeichert
 
hr3
Global Moderator
*****
Offline


Es gibt nichts Gutes/
außer: Man tut es. E.Kästner

Beiträge: 1126
Germany
Geschlecht: male
SQL-Schnittstelle anzeigen
Antwort #4 - 25.02.11 um 11:51:55
 
Programm in stat/ installieren.
Ist auch Bestandteil von http://www.php-web-statistik.de/cgi-bin/yabb/YaBB.pl?num=1294068328/3#3

Zitat:
<?php
### letzte Änderung 25.02.11 12:39
### SQL-Schnittstelle anzeigen

define('_N',"\n");
define('_BN','<br>'._N);
include('config/config_db.php');

echo '<pre>';
echo 'mysql_stat:            '.mysql_stat()._N;
echo 'mysql_get_client_info:      '.mysql_get_client_info()._N;
echo 'mysql_get_host_info:      '.mysql_get_host_info()._N;
echo 'mysql_get_server_info:      '.mysql_get_server_info()._N;
echo 'mysql_get_proto_info:      '.mysql_get_proto_info()._N;
echo 'mysql_client_encoding:      '.mysql_client_encoding()._N;
echo '<hr>';
echo 'db_host:      '.$db_host._N;
echo 'db_user:      '.$db_user._N;
echo 'db_password:      '; for ($i=1;$i<=strlen($db_password);$i++) {echo '·';} echo _N;
echo 'db_name:      '.$db_name._N;
echo 'db_prefix:      '.$db_prefix._N;
echo '</pre>';

$link=mysql_connect($db_host,$db_user,$db_password);
if (!$link) {f_exit('Could not connect to MySQL');}

$db_selected=mysql_select_db($db_name);
if (!$db_selected) {f_exit(mysql_error());}
$result=mysql_query('SHOW TABLE STATUS');

while ($row=mysql_fetch_assoc($result)) {f($row);$n[]=$row['Name'];}
echo '</table>'._BN; $t=false;

foreach($n as $value_n) {
$result=mysql_query('SHOW COLUMNS FROM '.$value_n);
if (!$result) {echo mysql_error()._BN;} else {
  $result1=mysql_query('select * from '.$value_n);
  $i=0;
  while ($row=mysql_fetch_assoc($result)) {
   $row=array_merge(array('Table'=>''),$row,array('&nbsp;'=>''));
   $meta=mysql_fetch_field($result1,$i); $i++;
   foreach($meta as $key=>$value) {if (($key!='name')&&($key!='table')) {$row[$key]=$value;}}
   f($row);}}}

echo '</table>'._BN; $t=false;

foreach($n as $value_n) {
$result=mysql_query('SHOW INDEX FROM '.$value_n);
if (!$result) {echo mysql_error()._BN;} else {
  while ($row=mysql_fetch_assoc($result)) {
   $row['Table']='';
   f($row);}}}

echo '</table>';
f_exit('');

function f($row) {
global $t,$value_n,$last_n;
if (!$t) {
  $t=true;
  echo '<table border="1" cellspacing="0" cellpadding="0" bordercolor="#CCCCCC"><tr>'._N;
  foreach($row as $key=>$value) {echo '<th bgcolor="#CCCCCC">'.str_replace('_',' ',$key).'</th>'._N;}
  echo '</tr>'._N;}
if (($value_n)&&($value_n!=$last_n)) {$last_n=$value_n; echo '<tr><td COLSPAN='.count($row).'><b>'.$value_n.'</td></tr>'._N;}
echo '<tr>'._N;
foreach($row as $key=>$value) {
  echo '<td';
  if (is_numeric($value)) {echo ' align="right"';}
  echo '>'.$value.'</td>'._N;}
echo '</tr>'._N;}

function f_exit($t) {
if ($t) {echo '<b><font color="red">'.$t.'</font></b><hr>'._N;} else {echo _BN;}
$t='SHOW GLOBAL VARIABLES';
echo '<b>'.$t.'</b>'._BN;
$result=mysql_query($t);
if (!$result) {echo mysql_error()._BN;} else {while ($row=mysql_fetch_assoc($result)) {f1($row);}}

$t='SHOW SESSION VARIABLES';
echo '<hr><b>'.$t.'</b>'._BN;
$result=mysql_query($t);
if (!$result) {echo mysql_error()._BN;} else {while ($row=mysql_fetch_assoc($result)) {f1($row);}}
echo '<hr>*end*';
if ($t) {exit;}}

function f1($row) {echo $row['Variable_name'].': '.$row['Value']._BN;}
?>
Zum Seitenanfang
« Zuletzt geändert: 26.02.11 um 17:47:54 von hr3 »  
 
IP gespeichert
 
hr3
Global Moderator
*****
Offline


Es gibt nichts Gutes/
außer: Man tut es. E.Kästner

Beiträge: 1126
Germany
Geschlecht: male
bekannte Probleme bei Umstellung auf Datenbank
Antwort #5 - 13.05.11 um 08:29:40
 
nach manuellen Anlegen der Datenbank prüfen mit welchem Zeichensatz dieses durchgeführt wurde.

wenn Fehlertexte im Fenster (und keine Buttons erkennbar) auf Vollbild umschalten

wenn nach Tabellen erstellen: ...stat/config/db_transfer.php?lang=de
und
Ausgabe von Fehlermeldungen
ja
: Access Denied
bzw
Ausgabe von Fehlermeldungen
nein
: Notice: Undefined index: lang in ...stat\config\db_transfer.php on line 19-33
erscheint, die Anweisungen
... ( $_GET [ "lang" ] ... ) || ( $_POST [ "lang" ] ... ) ...
durch
... $_REQUEST [ "lang" ] ...
ersetzen

Fehlermeldung: The used table type doesn't support FULLTEXT indexes
InnoDB ist seit MySQL Version 5.5 die Standard-Speicher-Engine
$engine = ' ENGINE = MYISAM';
definieren und an alle CREATE TABLE-Anweisungen anfügen
$query  = "CREATE TABLE ".$db_prefix." ... )".$engine;

time_limit wird z.B. bei großer pattern_referer.dta überschritten
sollte wie Übertragung der logdb_backup.dta gelöst sein, hier nur Notlösung durch
set_time_limit(0);

Die Konvertierung kann bei großen Dateien abhängig von der Server-Geschwindigkeit auch im Stundenbereich liegen
Wählen Sie dazu die zu schreibenden Zeilen pro Durchlauf aus.
Ein höherer Wert wirkt sich dabei positiv aus. Der maximale kann nur durch Test ermittelt werden.
Nach einem Abbruch Tabellen löschen und Setup erneut starten.

Fehlermeldung: Unknown column 'undefined' in 'field list'
nicht abgefangener Datenzustand, Wert 'undefined' in Feld Farbtiefe ist nicht nummerisch
durch Editor in logdb_backup.dta korrigieren
Zum Seitenanfang
 
 
IP gespeichert
 
Seitenindex umschalten Seiten: 1
Thema versenden Drucken