Hallo MySql Profis!
Ich habe eine Verständnisfrage bezüglich Abfragen.
Wie viel Abfragen maximal wäre optimal für normalen (2-5 sek.) Seitenaufbau , bei Millionen Datensätzen in der Tabelle?
Es ist klar, je weniger desto besser. Ich habe gelesen, dass MySql schneller arbeitet als PHP. Für mich wäre wichtig zu verstehen: soll ich Daten mit mehreren kleinen (unkomplizierten) Abfragen zu holen oder eine komplizierte (über mehrere Tabellen) und dann mit PHP behandeln.
Zusätzlich würde ich gerne über INDEX erfahren. Ich habe Manual gelesen, aber nicht schlau geworden. Beschreibung ist einfach zu kompliziert. Ein Beispiel wäre nicht schlecht.
Ich habe zwei Tabellen, ob ich die optimal erstellt habe? Die sind verknüpft über ID in erster und USERID in zweiten.
Mit freundlichen Grüßen
Ich habe eine Verständnisfrage bezüglich Abfragen.
Wie viel Abfragen maximal wäre optimal für normalen (2-5 sek.) Seitenaufbau , bei Millionen Datensätzen in der Tabelle?
Es ist klar, je weniger desto besser. Ich habe gelesen, dass MySql schneller arbeitet als PHP. Für mich wäre wichtig zu verstehen: soll ich Daten mit mehreren kleinen (unkomplizierten) Abfragen zu holen oder eine komplizierte (über mehrere Tabellen) und dann mit PHP behandeln.
Zusätzlich würde ich gerne über INDEX erfahren. Ich habe Manual gelesen, aber nicht schlau geworden. Beschreibung ist einfach zu kompliziert. Ein Beispiel wäre nicht schlecht.
Ich habe zwei Tabellen, ob ich die optimal erstellt habe? Die sind verknüpft über ID in erster und USERID in zweiten.
PHP-Code:
CREATE TABLE `users` (
`id` int(11) NOT NULL auto_increment,
`name` varchar(255) NOT NULL default '',
`username` varchar(150) NOT NULL default '',
`email` varchar(100) NOT NULL default '',
`password` varchar(100) NOT NULL default '',
`usertype` varchar(25) NOT NULL default '',
`block` tinyint(4) NOT NULL default '0',
`sendEmail` tinyint(4) default '0',
`gid` tinyint(3) unsigned NOT NULL default '1',
`registerDate` datetime NOT NULL default '0000-00-00 00:00:00',
`lastvisitDate` datetime NOT NULL default '0000-00-00 00:00:00',
`activation` varchar(100) NOT NULL default '',
`params` text NOT NULL,
PRIMARY KEY (`id`),
KEY `usertype` (`usertype`),
KEY `idx_name` (`name`),
KEY `gid_block` (`gid`,`block`),
KEY `username` (`username`),
KEY `email` (`email`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=69 ;
CREATE TABLE `user_profil` (
`id` int(11) NOT NULL auto_increment,
`userid` int(11) NOT NULL,
`hits` int(11) NOT NULL default '0',
`gender` varchar(15) NOT NULL,
`birthday` date NOT NULL,
`avatar` varchar(50) NOT NULL,
`avatarapproved` int(1) NOT NULL default '0',
`profileapproved` int(1) NOT NULL default '0',
`banned` text NOT NULL,
`test` mediumtext,
`favoriten` mediumtext,
`musik` mediumtext,
`test_to` varchar(255) default NULL,
PRIMARY KEY (`id`),
KEY `userid` (`userid`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=10 ;
Kommentar