MySQL server installeren onder Windows met een no_install.zip
Carl on mei 5th 2014
Pak het archief uit op de gewenste locatie. U kunt de server in een shell starten met het volgende commando:
shell> {DISK:\PAD NAAR MySQL SERVER DIRECTORIE NAAM}\bin\mysqld
Stop de server in een andere shell met:
shell> {DISK:\PAD NAAR MySQL SERVER DIRECTORIE NAAM}\bin\mysqladmin -u root shutdown
Als u de data directorie van MySQL in een andere directorie – en eventueel op een andere schijf – dan de standaard locatie wilt plaatsen, kan dat door de volledige ‘data’ directorie daarheen te verplaatsen. In dat geval moet MySQL geinstrueerd worden waar de gegevensbestanden/databases zich bevinden met behulp van een optie-bestand (my.ini or my.cnf). De server wordt dan gestart met:
shell> {DISK:\LOCATIE[\..\..]\MySQL SERVER DIRECTORIE NAAM}\bin\mysqld --defaults-extra-file={DISK:\PAD NAAR}\[my.ini or my.cnf]
Stop de server als boven aangegeven.
Vaak voorkomende problemen
Maakt u gebruik van InnoDB en u krijgt onderstaande foutmelding, dan kunt u dat eenvoudig verhelpen door ibdata1, ibdata2, and the ib_logfile* bestanden te verwijderen uit de data directorie. Bij herstarten van de MySQL server worden de verwijderde bestanden opnieuw gegenereerd.
InnoDB: Error: log file .\ib_logfile0 is of different size 0 10485760 bytes
InnoDB: than specified in the .cnf file 0 25165824 bytes!
120112 5:16:30 [ERROR] Default storage engine (InnoDB) is not available
120112 5:16:30 [ERROR] Aborting
Als onderstaande foutmelding in het log verschijnt:
140430 22:27:43 [ERROR] [PATH TO......]\bin\mysqld: unknown variable mysql-data-dir=[DIRECTORY TO SPECIFIED DATA DIR]
staat een oude parameter naam in het optiebestand. Vervang ‘mysql-data-dir’ met ‘datadir’ in my.ini/.cnf en herstart de server
Serverinstellingen
De gecompileerde standaard serverinstelling op te vragen kan met onderstaand commando:mysqld --verbose --help
Een overzicht van alle mogelijke server parameters, ga naar: Tuning Server Parameters. De pagina geeft de nodige hulp voor het optimaliseren van de serverinstellingen.
Optiebestand
Voor meer informatie ga naar: Using Option Files
MySQL server starten als een windows service
Gebruik hiervoor een shell/PowerShell met administrator rechten
Voordat u MySQL start als een windows server, zorg ervoor dat deze niet meer actief is. Beeindig MySQL server met onderstaand commando:
shell> {DISK:\PAD NAAR MySQL SERVER DIRECTORIE NAAM}\bin\mysqladmin -u root shutdown
De MySQL server als een service installeren
Voor standaard installatie gebruik het commando:
shell> {DISK:\PAD NAAR MySQL SERVER DIRECTORIE NAAM}\bin\mysqld --install
bij gebruik van een optiebestand:
shell> {DISK:\PAD NAAR MySQL SERVER DIRECTORIE NAAM}\bin\mysqld --install MySQL --defaults-file={DISK:\PAD NAAR OPTIEBESTAND}
Om de dienst handmatig te laten starten vervang –install met –install-manual
De service verwijderen
Om de MySQL server die geinstalleerd is als een service te verwijderen, stop de service als deze actief is met het volgende commando: “NET STOP MySQL”. Gebruik vervolgens de –remove optie om de service te verwijderen:
shell> {DISK:\PAD NAAR MySQL SERVER DIRECTORIE NAAM}\bin\mysqld --remove
Filed in MySQL | Reacties uitgeschakeld
ADODB -database wisselen
Carl on jul 26th 2011
In ADODB kunt u niet meerdere connecties opzetten naar verschillende databases. Indien u cross database tabellen moet uitlezen, zijn er twee opties:
- De bestaande connectie sluiten en een nieuwe connectie opzetten naar de database waaruit u de benodigde gegevens ophaalt;
- Wisselen van database.
Examples:
1. Nieuwe connectie
$dbhandle = new ADONewConnection( $DSN_1 );
... queries e.d. ...
$dbhandle->close ();
$dbhandle = new ADONewConnection( $DSN_2 );
... queries e.d. ...
etc, etc
2. Wisselen van database
$dbhandle = new ADONewConnection( $DSN_1 );
... queries e.d. ...
$dbhandle->SelectDB ( $databasename );
... queries e.d. ...
Op het eerste gezicht lijken de verschillen niet groot. Echter (idd), indien een database server zwaar beproeft wordt, maakt het wel degelijk uit. De eerste optie maakt telkens een nieuwe connectie met de server. De server kan maar een aantal connecties aan (configuratie). Daarbij komt nog eens dat iedere bestaande connectie niet meteen beschikbaar is. Er gaat een korte tijd verloren, voordat de connectie daadwerkelijk wordt vrijgegeven. Op een gegeven moment zijn de connecties dus op en iedee request naar de server komt daarmee in de queue. Voor een website betekend dat ‘timeout’ van de pagina.
De tweede optie maakt telkens gebruik van dezelfde resource/connectie en verandert alleen de database waarnaar deze verwijst. Het is wel van belang dat de databases allemaal toegankelijk zijn voor de gebruiker waarmee ingelogd is op de server. Dat is niet voor alle applicaties/websites mogelijk en afhankelijk van de service provider (indien u dat niet zelf bent).