Kaj je MySQL? Kako deluje MySQL?


MySQL je najbolj priljubljen odprtokodni sistem za upravljanje relacijskih baz podatkov (RDBMS) na svetu, ki ga uporabljajo Facebook, Google, Adobe, Alcatel Lucent in Zappos ter številna spletna spletna mesta/aplikacije.

Razvija, distribuira in podpira družba Oracle Corporation. To je večplastna, zmogljiva, prilagodljiva in razširljiva relacijska baza podatkov, ki temelji na standardiziranem jeziku SQL (Structured Query Language), ki se uporablja za ustvarjanje in upravljanje z bazami podatkov.

Najnovejša različica MySQL (različica 8.0 v času pisanja) ima podporo za zbirke podatkov dokumentov NoSQL (\ "Not Only SQL"). Lahko jo namestite v Linux, macOS in druge operacijske sisteme, podobne Unixu, in Windows.

  • Prenesite MySQL Community Edition
  • Prenesite MySQL Enterprise Edition

Programska oprema za zbirko podatkov MySQL je odprtokodna in uporablja GPL (GNU General Public License). Pomembno je, da je na voljo v dveh različicah: odprtokodni strežnik MySQL Community Server, ki ga lahko prenesete, dostopate do izvorne kode in ga uporabljate brezplačno, ter lastniška izdaja MySQL Enterprise in drugi komercialni izdelki, ki zahtevajo letno naročnino in vključujejo strokovno podporo in številne druge ugodnosti.

MySQL se uporablja za najrazličnejše namene, vključno s spletno bazo podatkov (najpogostejša uporaba), skladiščenjem podatkov, e-poslovanjem in aplikacijami za beleženje. Je ena najpogosteje nameščenih programov za nastavitev skladov LAMP (Linux + Apache + MySQL + PHP) ali LEMP (Linux + Engine-X + MySQL + PHP), ki se uporabljajo za spletni razvoj in gostovanje sistemov za upravljanje spletnih vsebin, kot je WordPress, Magneto, Joomla, Drupal in mnogi drugi. Poleg PHP podpira tudi številne druge jezike, vključno s Perl, Node.js, Python itd.

Oglejte si ta sorodna vodiča pri nastavljanju aplikacije z bazo podatkov MySQL v Linuxu.

  • Kako namestiti strežnik LAMP na CentOS 8
  • Kako namestiti strežnik LEMP na CentOS 8
  • Kako namestiti LAMP Stack s PhpMyAdmin v Ubuntu 20.04
  • Kako namestiti LEMP Stack s PhpMyAdmin v Ubuntu 20.04
  • Kako namestiti WordPress z Apachejem v Ubuntu 20.04

Kako deluje MySQL?

Kot večina sistemov za upravljanje z bazami podatkov tudi MySQL ima odjemalsko-strežniško arhitekturo in se lahko uporablja v omrežnem okolju. Strežniški program je v istem fizičnem ali navideznem sistemu, kjer so shranjene datoteke zbirke podatkov, in je odgovoren za vse interakcije z bazami podatkov.

Različni odjemalski programi, kot so orodja MySQL za upravljanje baz podatkov ali katere koli aplikacije, napisane v drugih programskih jezikih, se lahko povežejo s strežnikom in pošiljajo zahteve po zbirki podatkov. Strežnik obdela zahteve odjemalca in rezultate vrne odjemalcu.

Stranka lahko prebiva v istem sistemu kot strežnik ali na oddaljenem gostitelju in strežniku pošilja zahteve po zbirki podatkov prek omrežja ali internetne povezave. Pomembno je, da se mora strežnik MySQL izvajati, da se odjemalci nanj lahko povežejo.

Ključne značilnosti MySQL

MySQL uporablja večplastno zasnovo strežnika z neodvisnimi moduli. Strežnik je večnitni, več uporabniški, razširljiv in trdno zasnovan za kritične, težke proizvodne sisteme. Ponuja tako transakcijske kot netransakcijske pomnilniške mehanizme in podpira dodajanje drugih pomnilniških mehanizmov.

  • MySQL uporablja zelo hitre tabele B-dreves s stiskanjem indeksa, zelo hiter sistem za dodeljevanje pomnilnika na osnovi niti in izvaja zelo hitra združevanja z uporabo optimiziranega združevanja z ugnezdeno zanko.
  • Podpira številne vrste podatkov, kot so podpisana/nepodpisana cela števila, tipi s plavajočo vejico (float in double), char in varchar, binarni in varbinarni, blob in text, Date, DateTime in časovni žig, leto, niz, enum, in prostorski tipi OpenGIS.
  • MySQL podpira tudi redundanco podatkov in visoko razpoložljivost (HA) z replikacijo master-slave, združevanjem v več vozlišč ter varnostnim kopiranjem in obnovitvijo/obnovitvijo. Ponuja široko paleto vrst varnostnih kopij in strategij, med katerimi lahko izberete metode, ki najbolj ustrezajo zahtevam za vašo uvajanje.
  • Njene varnostne funkcije vključujejo upravljanje uporabniškega računa in nadzor dostopa, preverjanje na osnovi gostitelja, šifrirane povezave, več komponent in vtičnikov (kot so vtičniki za preverjanje pristnosti, vtičniki za nadzor povezav, komponenta za preverjanje gesla in še veliko več), ki izvajajo varnost kot tudi način FIPS (Zvezni standardi za obdelavo informacij 140-2 (FIPS 140-2)) na strani strežnika, ki velja za kriptografske operacije, ki jih izvaja strežnik.

Poleg tega si lahko zagotovite tudi dodatno varnost, tako da sledite najboljšim praksam glede varnosti MySQL/MariaDB za Linux. Kot vedno pa poskrbite za dobro zaščito omrežja in strežnika, da zagotovite vsestransko varnost strežnika baz podatkov.

Odjemalec in orodja MySQL

MySQL je dobavljen z več odjemalskimi programi, kot so priljubljeni pripomočki ukazne vrstice: mysql, mysqldump za upravljanje baz podatkov. Za povezavo s strežnikom MySQL lahko odjemalci uporabljajo več protokolov, na primer vtičnice TCP/IP na kateri koli platformi ali vtičnice domen UNIX v sistemih UNIX, kot je Linux.

Za povezovanje in izvajanje stavkov MySQL iz drugega jezika ali okolja obstajajo MySQL konektorji, ki temeljijo na standardih (ki omogočajo povezljivost s strežnikom MySQL za odjemalske aplikacije), in API-ji za najbolj priljubljene programske jezike (za zagotavljanje dostopa na nizki ravni do virov MySQL z uporabo klasični protokol MySQL ali protokol X).

Nekateri priljubljeni konektorji in API-ji vključujejo ODBC (Open Database Connectivity), Java (JDBC - Java Database Connectivity), Python, PHP, Node.js, C ++, Perl, Ruby in native C in vdelane primerke MySQL.

Naslednji članki o MySQL vam bodo v pomoč:

  • Kako namestiti najnovejši MySQL 8 v Debian 10
  • 15 koristnih nasvetov za nastavitev in optimizacijo zmogljivosti MySQL/MariaDB
  • Koristni nasveti za odpravljanje pogostih napak v MySQL
  • Kako ponastaviti root geslo v MySQL 8.0
  • Kako spremeniti privzeta vrata MySQL/MariaDB v Linuxu
  • 4 uporabna orodja ukazne vrstice za spremljanje zmogljivosti MySQL v Linuxu