1. Nej
2. Bla stöd för transaktioner, foreign key constrains, fler samtida användare kan ändra data, kommando för att låsa tabeller. (finns både för- och nackdelar med innoDB)
3. När ett fält är satt till UNIQUE (index) kan ett värde bara förekomma en gång. Det är till för att säkra mot dublikat, inte för optimering.
jag har en sida som uppdaterar en fält i databasen var 60 sek.
alla medlemmar kör samma update? hur ska jag lösa det? det är lite onödigt och låta alla medlemmar köra update.. istället måste det gå på nått sätt och bygga ett cronjob som uppdaterar själv var 20 sek kanske?
och samma sak med antalet online
Ha en kolumn i användartabellen som talar om när användaren senast gjorde något på sidan. Varje gång användaren gör något så uppdaterar du klockslaget. För att se hur många som är online plockar du bara ut antalet som gjort något inom tio minuter (exempelvis)
istället för att låta alla medlemmar anropa det här varje gång så måste man kunna ställa in nån cache i mysql på nått sätt? måste jag kör ett cronjob för det?
istället för att låta alla medlemmar anropa det här varje gång
Varför behöver alla medlemmer anropa det varje gång? Behöver de verkligen få reda på all info om medlemmarna som har status online?
Plocka bara ut de kolumner du behöver och använd LIMIT om du inte behöver visa alla.
Du kan ju exempelvis visa de fem senast inloggade, eller så kan du visa antalet inloggade (COUNT(*)) och ha en länk man kan klicka på för att se vilka som är inloggade.