wiki:Documentatie/Beheerder/Installeren/Installatiehandleiding/MySQL

MySQL

Download MySQL, tenminste versie 5.5, van http://www.mysql.org (voor OpenAC v1 was MySQL 5.1 voldoende, maar OpenAC v2 vereist een nieuwere database). Kies de installatieoptie waarbij je kunt aangeven hoeveel gelijktijdige gebruikers je verwacht. Kies waar gevraagd voor "transactioneel", omdat dit beter aansluit bij de eisen van OpenAC. OpenAC heeft InnoDB tabellen nodig en de default character set moet je daarom in stellen op Latin-1 (ISO 8859-1).

Ga nu via het Startmenu naar MySQL en kies de MySQL Command Line client. Voer het root-wachtwoord in dat je bij de instalatie hebt opgegeven, of druk ENTER wanneer je geen wachtwoord hebt ingevoerd. Voer dan de volgende commando's uit:

create database openac CHARACTER SET latin1;
grant all on openac.* to 'fenac'@'%' identified by 'dbc';
grant all on openac.* to 'fenac'@'localhost' identified by 'dbc';
exit

Het is van groot belang dat je voor de character set latin1 kiest (en niet een andere variant zoals latin1_general_ci). In de MySQL Workbench zie je vervolgens misschien latin1_swedish_ci staan -- dat is afhankelijk van de default instelling van je MySQL installatie, en moet je vooral niet wijzigen. Anders krijg je #3259 of #5026.

De OpenAC-database is nu aangemaakt. NB: het woord identified bevat maar één N. NB: het wachtwoord dat hier wordt opgegeven, wordt gebruikt om de verbinding te maken met de database. Het is verstanding om een ander wachtwoord te kiezen, en om wachtwoorden van test- en productiedatabases verschillend te maken.

TIP: Voor prettig gebruik met OpenAC moeten er instellingen worden gewijzigd in MySQL. Zoek hiertoe in Program Files naar MySQL en ga in de folder MySQL Server naar het bestand my.ini. Zoek de onderstaande variabelen op en maak instellingen als hieronder of voeg ze toe (heb je meer ruimte, verhoog dan de waarden):

query_cache_size=16M
innodb_buffer_pool_size=512M
innodb_file_per_table=1

NB: De my.ini file is niet in alle MySQL versies aanwezig, maak in dat geval een kopie van my-default.ini en hernoem die naar my.ini.

Beveiligde Verbinding

Bij gebruik van MySQL ondersteunen we twee directe verbindingsoorten (vanaf OpenAC v1.212, juni 2009). Deze zijn vooral interessant voor kleinere (perifere) instellingen waar veel beheer op afstand plaatsvindt. Voor deze verbindingen hoeft geen VPN te worden opgezet maar moet wel in de firewall MySQL-poort 3306 worden opengezet voor verkeer van buitenaf.

  • De simpelste soort is gericht op efficiency en heet MySQL Compressed. Je selecteert deze optie in plaats van MySQL direct in het inlogscherm van OpenAC. Hierbij worden de gegevens die over de datalijn lopen gecomprimeerd. Dit kan flink schelen wanneer lange lijsten gegevens worden opgehaald, bijvoorbeeld wanneer bij een holding op afstand managementoverzichten worden opgevraagd uit de lokale databases van OpenAC.
  • De tweede soort is gericht op beveiliging van de getransporteerde (patiënt-)gegevens tegen toegang door derden bij een connectie over het open internet. Deze optie heet MySQL secure. Om van deze functie gebruik te maken zijn wat installatiestappen nodig, zie onder. Vooral het aanmaken van de certificaten kan een lastig klusje zijn, lukt dit echt niet, neem dan contact op met FENAC ICT voor assistentie.

Installatie van SSL certificaten in de MySQL server en OpenAC clients.

  1. Volg de instructie onder Example 3: Creating SSL files on Windows op de MySQL website.
  2. Je hebt nu 8 bestanden gemaakt:
    ca-cert.pem
    ca-key.pem
    client-cert.pem
    client-key.pem
    client-req.pem
    server-cert.pem
    server-key.pem
    server-req.pem
    
  3. De twee CA-bestanden en de drie SERVER-bestanden kopieer je op de database server naar C:\Program Files\MySQL\MySQL Server 5.5\, waar je ook het bestandje my.ini vindt.
  4. De CA-bestanden en de CLIENT-bestanden kopieer je naar de configuratiemap (Application Data\OpenAC of .openac) van de gebruikers die gebruik gaan maken van de beveiligde verbinding.
  5. LET OP: de SERVER-bestanden moeten niet samen met de CLIENT-bestanden worden bewaard, want daarmee geef je het recept weg om de beveiligde verbinding af te luisteren.
  6. Voeg op de database server in my.ini onder [mysqld] na de regel port=3306 de volgende regels in:
    ssl-ca="C:/Program Files/MySQL/MySQL Server 5.0/ca-cert.pem"
    ssl-cert="C:/Program Files/MySQL/MySQL Server 5.0/server-cert.pem"
    ssl-key="C:/Program Files/MySQL/MySQL Server 5.0/server-key.pem" 
    
  7. Herstart de MySQL server.
  8. Gebruik een recente starter kit met Python 2.5. Start OpenAC, verander de gegevensbron van MySQL direct in MySQL secure en log in.
  9. Je weet nu dat de beveiligde verbinding werkt. De volgende stap is om de toegang tot de database van buitenaf te regelen. Dit kan door de GRANT-regels die je normaal intypt, aan te passen zodat verbindingen binnen het AC niet hoeven te worden beveiligd, maar die van buitenaf wel (vervang mijn-ac.nl door de naam van het lokale netwerk).
    grant all on openac.* to 'fenac'@'localhost' identified by 'dbc';
    grant all on openac.* to 'fenac'@'%.mijn-ac.nl' identified by 'dbc';
    grant all on openac.* to 'fenac'@'%' identified by 'dbc' require SSL;
    exit
    
Last modified 6 years ago Last modified on Dec 22, 2017 9:40:49 AM