[[TOC(heading=MySQL)]] [[TOC(heading=Installatiehandleiding, sectionindex, compact, depth=4, allactive, Documentatie/Beheerder/Installeren/Installatiehandleiding/)]] [[TOC(heading=Installeren en beheren, sectionindex, compact, depth=3, allactive, indirect=Documentatie/Beheerder/Installeren/TOC)]] [[TOC(heading=Beheerder, sectionindex, compact, depth=2, allactive, indirect=Documentatie/Beheerder/TOC)]] [[TOC(heading=Documentatie, sectionindex, compact, depth=1, allactive, Documentatie/)]] = 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 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 }}} [[NoteBox(warn, 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 localiseer 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 }}} == Beveiligde Verbinding == #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 [http://dev.mysql.com/doc/refman/5.5/en/secure-create-certs.html MySQL website]. 1. 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 }}} 1. 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. 1. 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. 1. 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. 1. 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" }}} 1. Herstart de MySQL server. 1. Gebruik een recente starter kit met Python 2.5. Start OpenAC, verander de ''gegevensbron'' van ''MySQL direct'' in ''MySQL secure'' en log in. 1. 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 }}}