S
saintjoe
Wer wollte nicht schon immer mal das Verhalten von MySQL bei großen Datenbanken testen?
Ganz einfach.
Leg 2 identische Tabellen an, setz ein paar Indices usw.
Füge für den Anfang, 2 Datensätze (oder mehr, je nach dem an) und dann führe folgendes Script aus:
Hier hab ich mal ein kleines Grundgerüst für eine Tabelle gebaut, einfach so ausführen (direkt in MySQL)
CREATE TABLE Kstamm (
AKZ varchar(255) default NULL,
TITELTEXT varchar(255) default NULL,
NACHNAME varchar(255) default NULL,
VORNAME varchar(255) default NULL,
STRASSE1 varchar(255) default NULL,
FIRMA1 varchar(255) default NULL,
PLZ varchar(255) default NULL,
ORT varchar(255) default NULL,
PRIVATADRESSE varchar(255) default NULL,
FIRMENADRESSE varchar(255) default NULL,
KUNDENNR int(4) NOT NULL,
DUBLID int(4) default NULL,
EnewsID varchar(255) default NULL,
LKZ varchar(255) default NULL,
SXVORNAME varchar(255) default NULL,
SXNACHNAME varchar(255) default NULL,
SXSTRASSE1 varchar(255) default NULL,
SXORT varchar(255) default NULL,
INDATE datetime default NULL,
CHDATE datetime default NULL,
EMAIL varchar(255) default NULL,
EMailFormat varchar(255) default NULL,
EMail_nicht_zugestellt varchar(255) default NULL,
EMail_Sperre varchar(255) default NULL,
Newsletter_Abo varchar(255) default NULL,
GEBDAT varchar(255) default NULL,
ZGTEXT varchar(255) default NULL,
ZG varchar(255) default NULL,
TELEFON varchar(255) default NULL,
FAX varchar(255) default NULL,
MOBIL varchar(255) default NULL,
SMSFreigabe varchar(255) default NULL,
MAILSPERRE varchar(255) default NULL,
NICHTZUSTELLBAR varchar(255) default NULL,
QUELLE varchar(255) default NULL,
QUELLID int(4) default NULL,
ZuspielID varchar(255) default NULL,
abonent varchar(255) default NULL,
EMAIL_PDate datetime default NULL,
SMS_PDate varchar(255) default NULL,
ALLG_PDate datetime default NULL,
EMAIL_PType varchar(255) default NULL,
SMS_PType varchar(255) default NULL,
ALLG_PType varchar(255) default NULL,
Mailsperre14j varchar(255) default NULL,
KEY AKZ (AKZ),
KEY DUBLID (DUBLID),
KEY EnewsID (EnewsID),
KEY QUELLID (QUELLID),
KEY ZuspielID (ZuspielID),
KEY ORT (ORT),
KEY VORNAME (VORNAME),
KEY NACHNAME (NACHNAME),
KEY PLZ (PLZ),
KEY STRASSE1 (STRASSE1),
KEY EMAIL (EMAIL)
) TYPE=MyISAM;
Beachten:
Tabellennamen beim Erzeugen und im Script selber anpassen!
Gruß
Ganz einfach.
Leg 2 identische Tabellen an, setz ein paar Indices usw.
Füge für den Anfang, 2 Datensätze (oder mehr, je nach dem an) und dann führe folgendes Script aus:
PHP:
<?
echo "Nice Script to dramatically increase DB sizes<br> ";
$db = mysql_connect(bla);
$dbb = mysql_select_db(bla);
//Let's start with 20 runs ;)
$i = 0;
while($i<=19)
{
$count = $i + 1;
echo "Run Number: $count<br>";
$run = mysql_query("INSERT INTO Kstamm2 SELECT * FROM Kstamm", $db);
$run = mysql_query("INSERT INTO Kstamm SELECT * FROM Kstamm2", $db);
$i++;
}
echo "That was it.";
?>
Hier hab ich mal ein kleines Grundgerüst für eine Tabelle gebaut, einfach so ausführen (direkt in MySQL)
CREATE TABLE Kstamm (
AKZ varchar(255) default NULL,
TITELTEXT varchar(255) default NULL,
NACHNAME varchar(255) default NULL,
VORNAME varchar(255) default NULL,
STRASSE1 varchar(255) default NULL,
FIRMA1 varchar(255) default NULL,
PLZ varchar(255) default NULL,
ORT varchar(255) default NULL,
PRIVATADRESSE varchar(255) default NULL,
FIRMENADRESSE varchar(255) default NULL,
KUNDENNR int(4) NOT NULL,
DUBLID int(4) default NULL,
EnewsID varchar(255) default NULL,
LKZ varchar(255) default NULL,
SXVORNAME varchar(255) default NULL,
SXNACHNAME varchar(255) default NULL,
SXSTRASSE1 varchar(255) default NULL,
SXORT varchar(255) default NULL,
INDATE datetime default NULL,
CHDATE datetime default NULL,
EMAIL varchar(255) default NULL,
EMailFormat varchar(255) default NULL,
EMail_nicht_zugestellt varchar(255) default NULL,
EMail_Sperre varchar(255) default NULL,
Newsletter_Abo varchar(255) default NULL,
GEBDAT varchar(255) default NULL,
ZGTEXT varchar(255) default NULL,
ZG varchar(255) default NULL,
TELEFON varchar(255) default NULL,
FAX varchar(255) default NULL,
MOBIL varchar(255) default NULL,
SMSFreigabe varchar(255) default NULL,
MAILSPERRE varchar(255) default NULL,
NICHTZUSTELLBAR varchar(255) default NULL,
QUELLE varchar(255) default NULL,
QUELLID int(4) default NULL,
ZuspielID varchar(255) default NULL,
abonent varchar(255) default NULL,
EMAIL_PDate datetime default NULL,
SMS_PDate varchar(255) default NULL,
ALLG_PDate datetime default NULL,
EMAIL_PType varchar(255) default NULL,
SMS_PType varchar(255) default NULL,
ALLG_PType varchar(255) default NULL,
Mailsperre14j varchar(255) default NULL,
KEY AKZ (AKZ),
KEY DUBLID (DUBLID),
KEY EnewsID (EnewsID),
KEY QUELLID (QUELLID),
KEY ZuspielID (ZuspielID),
KEY ORT (ORT),
KEY VORNAME (VORNAME),
KEY NACHNAME (NACHNAME),
KEY PLZ (PLZ),
KEY STRASSE1 (STRASSE1),
KEY EMAIL (EMAIL)
) TYPE=MyISAM;
Beachten:
Tabellennamen beim Erzeugen und im Script selber anpassen!
Gruß