2. Reikalingi įrankiai: MySQL serveris ir PhpMyAdmin

Laikas pereiti prie pasiruošimo etapo - papasakosiu apie konkrečius įrankius darbui su MySQL.

Žvelgiant plačiau, MySQL dažniausiai naudojama kaip duomenų bazė konkrečiam projektui - ir kaip taisyklė tai yra internetinis puslapis, labiausiai paplitusi kalba darbui su MySQL yra PHP. Dėl to patogiau į tai žvelgti kaip į įrankių paketą, iš kurio MySQL tik viena sudedamoji dalis.

Taigi, tai yra taip vadinamas web-serveris - populiariausi sprendimai Windows operacinei sistemai (kurioje pats dirbu) yra XAMPP, parsisiųskite jį iš čia. Į paketą įeina Apache web-serveris, PHP, ir mums svarbiausi dalykai - MySQL serveris bei phpMyAdmin įrankis.

MySQL serveris yra pati nematoma sistema, branduolys, pagrindas viso darbo su duomenų baze, būtent ten bus saugomi duomenys. O priėjimui prie tų duomenų jau galima naudoti įvairius įrankius, kurie jungiasi prie to serverio ir daro užklausas. Tai populiariausias iš tokių įrankių yra phpMyAdmin, kuris atrodo realiai kaip internetinė svetainė. Tai būtent jis bus įdiegtas kartu su XAMPP.

Taip pat, turint įdiegtą MySQL serverį, galima su juo dirbti ir "primityviu" būdu - per komandinę eilutę: atsidarote, rašote užklausas rankiniu būdu, gaunate atsakymus tame tekstiniame lange. Bet šits būdas labiau paplitęs nebent serverio administravimui, norint pakeisti paties MySQL serverio nustatymus, o ne dirbti su duomenimis.

XAMPP diegiamas paprastu "Next -> Next -> Finish" principu - nesigilinkite per daug į nustatymus. Pabaigus diegimą, jūs kompiuteryje turėsite serverį, kurį reikės paleisti kiekvieną kartą, norint dirbti su PHP ir MySQL. Tai daroma paleidžiant XAMPP Control Panel paspaudžiant du mygtukus "Start":

Paleidę web-serverį (kartu su MySQL), galėsite prisijungti prie jo per naršyklę - dažniausiai adresas yra http://localhost. Ir, kaip sakiau, kartu su serveriu diegiamas ir phpMyAdmin, tai jo adresas greičiausiai bus toks: http://localhost/phpmyadmin - turėtumėte pirmą kartą pamatyti kažką tokio:

Kairėje matote duomenų bazių sąrašą (tai yra sisteminės XAMPP duomenų bazės, su jomis nieko daryti nereikia), o dešinėje visokius meniu punktus, nustatymus ir sisteminę informaciją. Kad dirbtume prie savo projekto, kiek vėliau sukursime savo duomenų bazę ir dirbims tik su ja.

Toliau - po XAMPP diegimo phpMyAdmin automatiškai prisijungė prie jūsų serverio be slaptažodžio, bet šiaip kiekvienas MySQL serveris turi prisijungimo parametrus - adresą, vartotoją ir slaptažodį. Adresas šiuo atveju, jei tame pačiame kompiuteryje, taip ir vadinasi localhost, o vartotojas ir slaptažodis gali būti nustatomi per nustatymus.

XAMPP diegimo metu vartotojas prie MySQL serverio nustatomas root, o slaptažodis tuščias. Bet "realiame pasaulyje", kai gausite vietą serveryje iš hostingo kompanijos, greičiausiai jums reikės sukurti duomenų bazę ir vartotoją-slaptažodį prie jos. Ir tada PHP failuose konfigūracijoje turėsite nurodyti keturis parametrus:

  • Serverio adresas (dažniausiai localhost, arba jei duomenų bazės serveris yra kitame kompiuteryje - greičiausiai turėsite jo IP adresą)
  • Duomenų bazės pavadinimas
  • Vartotojas
  • Slaptažodis

Kaip pavyzdys, Laravel 4 frameworko atveju kodo fragmentas atrodo taip - realiai mūsų atveju svarbus keturi parametrai: host, database, username ir password:

Ir viskas, iš esmės - galime dirbti! Turime MySQL serverį, prie kurio jungiamės per phpMyAdmin ir būtent per ten vykdysime daugumą operacijų šiame kurse. Tad jis bus jūsų artimas draugas, pripraskite prie jo - galite iš anksto apsižiūrėti ir palandžioti po meniu punktus.

Svarbus dalykas: šio kurso metu vieną po kitos aptarinėsime SQL kalbos komandas - kaip sukurti lentelę, kaip ištraukti duomenis ir t.t. Reikalas tas, kad užklausų mintinai mokintis ir net žinoti nebūtina - pvz tas pats phpMyAdmin leidžia jums manipuliuoti duomenų baze visualiai - per formas, langus, nuorodas ir mygtukus.
Sakykime, vietoje "CREATE TABLE" užklausos rašymo jūs galite tiesiog paspausti "Create new table" meniu ir galėsite pasirinkti norimus lentelės laukus - vėlgi be jokių SQL žinių. Bet tai būtų tik paviršutiniškas susipažinimas su sistema - dirbant su didesniais projektais, ar norint ištraukti duomenis tam tikru sudėtingesniu būdu, neišvengiamai reikės rašyti ir SQL užklausas. Šio kurso metu visoms užklausoms naudosime phpMyAdmin lauką pavadinmu SQL ir parodysiu, kokie būna SQL užklausų rezultatai, bet jei norite ieškoti lengvesnio kelio - dažnai phpMyAdmin jums jį pasiūlys. Klausimas tik kiek norite gilintis.

Kuriame duomenų bazę per phpMyAdmin

Ir pamokos pabaigoje, kaip minėjau, sukurkime duomenų bazę, su kuria vėliau ir dirbsime. Kaip matėte, phpMyAdmin lango kairėje pusėje jau yra duomenų bazių sąrašiukas - jis mums netrukdo, mes pridėsime prie jo naują punktą. Tam kairėje pusėję spaudžiame New, tada pagrindiniame lange pasirodo forma Create database - vos iš dviejų laukų: duomenų bazės pavadinimas (privalomas) ir koduotė (neprivaloma).

Taigi įrašome kokį nors pavadinimą - pats kurso metu naudosiu elektroninės parduotuvės duomenų bazės pavyzdį, taigi įrašysiu "shop". Koduotės galite nesirinkti, bet iš esmės saugiausias variantas - rinktis utf8_general_ci, tada tinkamai atsivaizduos lietuviškos raidės.

Po sukūrimo - mūsų duomenų bazė atsidurs kairėje sąraše. Jeigu paspausime ant duomenų bazės pavadinimo, pagrindiniame lange atsidarys informacija, kad dar nėra sukurta lentelių, ir kad galima jas sukurti. Bet tai jau kitos pamokos tema.

Kuriame duomenų bazę su SQL užklausa

Taip pat svarbu, kas gi iš tikrųjų vyksta, per phpMyAdmin kuriant duomenų bazę. Iš tikro tai į MySQL serverį nukreipiama SQL užklausa CREATE DATABASE - pažiūrėkime, kaip ji atrodo sintaksiškai.

Šiaip viso kurso metu SQL užklausas rašysime į phpMyAdmin laukelį SQL, esantį viršuje tarp meniu punktų. Tad pabandykime sukurti kitą duomenų bazę per ten. Tiesiog įrašome šitą užklausą ir spaudžiame mygtuką GO:

CREATE DATABASE shop2;

Ir viskas, gauname atsakymą pagrindiniame lange, kad užklausa įvykdyta sėkmingai:

MySQL returned an empty result set (i.e. zero rows). (Query took 0.0021 seconds.)

Tai kad MySQL grąžino tuščią duomenų rinkinį, tai ne bėda - CREATE DATABASE užklausai rezultato ir neturi būti. Svarbu kad užklausa įvykdyta, ir kairėje duomenų bazių sąraše galite matyti shop2. Tačiau jei bandysite sukurti duomenų bazę su pavadinimu, kuris jau egzistuoja - gausite klaidą:

Tai būtent taip yra dirbama su phpMyAdmin, jei norima leisti konkrečias SQL užklausas - per meniu punktą SQL. Būtent jį ir naudosime tolimesnėje kurso eigoje, dirbdami su mūsų sukurta duomenų baze shop.

Skyrelio pabaigai, pridursiu kad phpMyAdmin toli gražu nėra vienintelis įrankis darbui su MySQL, bet jis labiausiai paplitęs ir dažnai siūlomas hostingo kompanijų kartu su hostingo paslauga. Bet jei norite pasižvalgyti į alternatyvas - galite į Google įvesti "phpmyadmin alternatives", rasite nemažai straipsnių panašių į šį sąrašą.

 

Pamokos testas

Dėmesio - SVARBU: testą galima spręsti tik VIENĄ KARTĄ, vėliau pažymio ištaisyti nebus įmanoma.

1. Kaip vadinasi populariausias įrankis darbui su MySQL?
DBAdmin
MySQLAdmin
SQLAdmin
phpMyAdmin

2. Ar galima rašyti SQL užklausas per komandinę eilutę?
Taip, galima
Galima tik pasileidus XAMPP
Ne, negalima
Galima tik per phpMyAdmin

3. Kas iš išvardintų dalykų neįeina į XAMPP paketą?
MySQL serveris
phpStorm
Apache
phpMyAdmin

4. Koks yra visuotinai pripažintas lokalaus serverio pavadinimas?
localweb
localserver
local
localhost

5. Kas yra išvardinta phpMyAdmin lango kairėje pusėje esančiame sąraše?
Lentelių laukai
Vartotojai
MySQL Serveriai
Duomenų bazės

6. Kas prisijungtume prie duomenų bazės serverio, reikia tokių parametrų: vartotojo, slaptažodžio, serverio adreso ir...:
Super-administratoriaus slaptažodžio
Duomenų bazės pavadinimo
Lentelės pavadinimo
Vartotojo teisių

7. Ką reiškia raktažodis "collation"?
Koduotė
Duomenų bazės lentelė
Duomenų bazės tipas
Duomenų bazės konfliktinė situacija

8. Norint sukurti naują duomenų bazę, koks raktažodis praleistas užklausoje?
XXXXX DATABASE shop;

NEW
ADD
SHOW
CREATE

9. Ar gali būti dvi duomenų bazės tuo pačiu pavadinimu tame pačiame serveryje?
Taip, jeigu sukurtos skirtingų vartotojų
Taip, jeigu nesutaps nei viena lentelė
Taip
Ne

10. Ar phpMyAdmin yra vienintelis įrankis darbui su MySQL?
Taip, bet yra skirtingos jo versijos
Taip
Ne
Taip, bet yra nemokamas ir mokamas variantai

Dvi pamokos pateikiamos nemokamai.
Jei patiko - pirmyn toliau!

Pirkti visą kursą (23 EUR)