5. MySQL - tietokannan käyttö

5.1. Mikä on MySQL?

MySQL on ominaisuuksiltaan monipuolinen, joustava ja varsin suorituskykyinen relaatiotietokanta, jota käytetään varsin paljon esimerkiksi erilaisten dynaamisten www-sivujen taustalla. MySQL:n kehitti alunperin ruotsalainen MySQL Ab- niminen konsulttiyritys omaan käyttöönsä. Sittemmin MySQL on muuttunut kokonaan ilmaiseksi ohjelmaksi, niin sanotun GPL - lisenssin alaiseksi. Kaupalliseen käyttöön pitää kuitenkin hankkia erillinen lisenssi, joka ei maksa kovin paljoa.

MySQL noudattaa niin sanottua asiakas-palvelin -arkkitehtuuria, jossa sovellukset eivät kommunikoi suoraan tietokannan kanssa vaan aina palvelinohjelman kautta. MySQL- palvelimeen voidaan ottaa yhteys monella eri tekniikalla, käytetyimpiä ovat ODBC-, Java/JDBC-, PHP- ja Perl-tekniikat. On mahdollista käyttää myös C++ - kielistä ohjelmointirajapintaa.

Yhdellä MySQL - palvelimella voi olla useita tietokantoja, joissa jokaisessa voi luonnollisesti olla useita tauluja. Tietokantojen käyttöä hallinnoidaan käyttäjätunnuksilla, joihin liittyy erilaisia käyttöoikeuksia. Tiedonhaku tapahtuu SQL-kielellä.

 

5.2. MySQL - arkkitehtuuri

MySQL-tietokanta tukee usean eri tyyppisen tietokannan käyttöä:

- operatiiviset tietokannat (OLTP, Online Transaction Processing); tällaisella tietokannalla on usein paljon käyttäjiä, tiedonhakukyselyt ovat suhteellisen yksinkertaisia, sovellusalueita esimerkiksi asiakaspalvelu ja varasto

- tietovarastot (DW, Data Warehouse); vähän käyttäjiä, monimutkaisia tiedonhakuja, historiatietoa, sovellusalueita esimerkiksi tutkimustietokannat, yritysten järjestelmät

- moniulotteisen datan analysointi (OLAP, Online Analytical Processing)

- tiedon louhinta (DM, Data Mining)

Kaikkein eniten MySQL-palvelimia käytetään OLTP-, DW- ja WWW-järjestelmissä. Esimerkkejä toteutuksista on osoitteessa http://www.mysql.com/user_stories.

 

5.3. MySQL:n käytön etuja

Suorituskyky

MySQL:n kehitystyön aloituksen yhtenä syynä oli tyytymättömyys markkinoilla olevien kaupallisten tietokantapalvelimien suorituskykyyn. Suorituskykyä kyllä sai, jos maksoi "itsensä kipeäksi". MySQL on osoittautunut vähintään yhtä suorituskykyiseksi kuin merkittävimmät kilpailijat. Suorituskyky on tosin jonkin verran riippuvainen palvelimen säädöistä ja tietokantojen rakenteesta.

Luotettavuus

MySQL-palvelimia on käytetty tuotantokäytössä useita kuukausia ilman keskeytyksiä. Koska kehitystyö perustuu avoimeen lähdekoodiin, myös käyttäjät voivat korjata ongelmia.

Alhaiset järjestelmävaatimukset

Tietokantapalvelimissa pitää paikkansa toteamus: mitä enemmän laitteistoresursseja, sen parempi suorituskyky. Näin on asia myös MySQL:n kohdalla. Kuitenkin MySQL:n saa ihan mukavasti toimimaan jopa sellaisessa koneessa, jossa on muistia vain 4 - 8 MB (Kirj. huom: tällaisia koneita löytää nykyään vain museoista). Alhaiset järjestelmävaatimukset ovat tehneet MySQl:sta hyvän välineen sulautettujen järjestelmien puolelle.

Skaalautuva järjestelmä

MySQL sopii sekä pieniin että isoihin järjestelmiin, edes kehittäjät eivät tunnu tietävän suorituskyvyn ylärajaa.

Laaja järjestelmätuki

Koska MySQL on kirjoitettu C -ohjelmointikielellä, on se suhteellisen helposti siirrettävissä eri käyttöjärjestelmien välillä. Myös tietokantayhteyksien rakentamiseen on hyvä tuki, ainakin ODBC-, JSP-, ja PHP-tekniikat ovat hyvin tuettuja.

Alhaiset lisenssikustannukset

MySQL:ssa on käytössä niin sanottu kaksoislisenssiointi:

- Free Software Foundationin General Public License (GPL) sallii MySQL-palvelimen käytön ohjelmiston osana ilmaiseksi, jos myös muu osa tuotetta on GPL-lisenssin alainen

- Muuhun kaupalliseen toimii joutuu hankkimaan lisenssin MySQL Ab:ltä. Hinnat eivät päätä huimaa, Classic - versio 250 € ja Pro 500 €.

Käyttäjäyhteisön tuki

MySQL:n käyttäjät kommunikoivat aktiivisesti Internetin välityksellä, apua ja vinkkejä löytyy todella paljon. MySQL:n lähdekoodi on avoimesti saatavana, joten jokainen riittävät tekniset tiedot ja ohjelmointitaidot omaava voi tutkia koodia ja kehittää siihen parannuksia.

 

5.4. MySQL:n asennus

MySQL-tietokantapalvelin voidaan asentaa ainakin seuraavia käyttöjärjestelmiä käyttäviin koneisiin: Linux, Solaris, FreeBDS, Windows, Mac OS x

Asennus Windowsiin

1. Asennuksessa tarvittavat komponentit

Mene Internetissä MySQL:n sivuille osoitteessa http://www.mysql.com/ ja siellä kohtaan Downloads (löytyy sivuston ensimmäisen sivun alalaidasta).

Valitse sitten kohta Mirrors ja seuraavaksi sinua lähinnä oleva palvelin. Suomesta löytyvät Tonnikala.net ja Netello Systems Oy.

Valittuasi latauspalvelimen,valitse kohta ”MySQL Database Server" ja sen alta ”Generally available 4.0.21”. Tosi uusin versio on 5.0, mutta se on hieman keskeneräinen (näet MySQL.com - sivulta, mitä versiota suositellaan käytettäväksi)

Kannattaa aina valita sellainen versio, jossa on mukana asennusohjelma.Varsinaisen palvelimen lisäksi on hyvä imuroida ja asentaa jokin graafinen käyttöliittymä. Niitä on useita, esimerkiksi MySQL Administrator ja WinSQL.

MySQL.com – sivustolta lataamasi tiedosto on pakattu, joten ensimmäiseksi sinun pitää purkaa se haluaamasi kansioon. Seuraavaksi siirryt tuohon kansioon ja käynnistät asennusohjelman (Setup.exe). Ohjelma kannattaa asentaa asennusohjelman ehdottamalla tavalla, tämä asennus nimittäin toimii varmasti. Minkäänlaista konfigurointia ei tarvitse tehdä.

2. Palveluprosessi

Kun palvelin on asennettu, se pitää määritellä Windowsin palveluprosessiksi antamalla komentotulkissa komento mysqld [-max] [-nt] -install. (Hakasuluissa olevata parametrit ovat valinnaisia). Tämän jälkeen palvelin käynnistyy automaattisesti, kun tietokone käynnistetään.

 

Asennus Linux – ympäristöön

MySQL-palvelin voidaan asentaa Linux –ympäristöön kahdella eri tavalla:

- lähdekoodin imurointi ja kääntäminen kohdeympäristössä

- valmiiksi käännetyn binaariversion asennuspaketin imurointi ja asennus

Jos mahdollista, kannattaa käyttää jälkimmäistä tapaa. Se on helpompi ja asennuspaketti löytyy useille eri laitealustoille.

Yleisesti ottaen Linuxin RPM-paketti asennetaan seuraavasti:

- imuroi asennuspaketit MySQL-server-VERSION.i386.rpm ja MySQL-client-VERSION.i386.rpm (tai vastaavat

laitealustasta riippuen)

- asenna paketit komennolla rpm –i MySQL-server-VERSION.i386.rpm MySQL-client-VERSION.i386.rpm</p>

- asennuksen datahakemisto on /var/lib/mysql

- asennus tapahtuu siten, että MySQL-palvelin käynnistyy automaattisesti koneen käynnistyessä.