A NoSQL hullám nagyon hódít, amivel én nem feltétlenül értek egyet, mert azt vallom, hogy mindent arra kell használni, amire való (azaz adatok tárolására, szűrésére, stb. SQL-t). Az egyik fő indok mellette azt szokott lenni, hogy JSON objektumokat lehet benne tárolni és azokkal lehet dolgozni. Így kliens oldal eleve készen kapja, nem kell a backenden összerakni és szétszedni újra és újra.
Természetesen a NoSQL megoldásoknak is megvannak a maga előnyei és hátrányai, nem azt mondom, hogy nincs helyük a webfejlesztésekben. Csupán azt, hogy egy előny miatt, nem biztos hogy el kell dobni mindent, amit eddig használtunk.
Ahhoz, hogy ezt kihasználhassuk olyan verzió kell a MySQL szerverből, ami jelenleg a stabil változatokban nem elérhető, ami jelen esetben 5.7-es MySQLt jelent és a stabilban csak 5.5 van. A telepítés folyamata a következő (természetesen egy backup után):
- töltsük le a MySQL oldaláról a „telepítő varázslót”:
https://dev.mysql.com/downloads/repo/apt/
a lap alján levő linkre kattintva, ami per pillanat ide mutat. dpkg -i mysql-apt-config_0.8.1-1_all.deb
-vel (értelem szerűen a saját fájlt kell itt megadni) indíthatjuk el a „varázslót”, aminek segítségével kiválaszthatjuk a kívánt verziót, esetemben 5.7-etapt-get update
apt-get upgrade
mysql_update -u root -p
-vel indítsunk egy update-et, majd ismételjük megmysql_update -u root -p --force
-al ugyanezt- indítsuk újra a MySQL-t:
service mysql restart
Amit a JSON típusú oszlopokról tudni kell, az itt van összefoglalva: https://dev.mysql.com/doc/refman/5.7/en/json.html .
A PHPMyAdmin és a HeidiSQL is kezeli ezeket a típusokat, így nem BLOB-ot látunk, hanem szabványos JSON objektumot, stringként.
Legjobb tudomásom szerint a MySQL 5.7-tel megegyező MariaDB 10.1 és 10.2 nem kezeli a JSON típusú oszlopokat, csak JSON fájlban képes dolgozni.