logo

Znova zaženite MySQL Ubuntu

MySQL lahko opišemo kot sistem za upravljanje baz podatkov (odprtokodni), običajno nameščen kot del znanega SVETILKA (Linux, Apache, MySQL, Perl/PHP/Python) sklad. Uporablja jezik strukturiranih poizvedb (okrajšava za SQL) in upravlja relacijski model za upravljanje svojih podatkov.
Je najbolj prepoznavna tehnologija v najnovejšem ekosistemu velikih podatkov. Pogosto znana kot najbolj znana baza podatkov in trenutno učinkovita in razširjena uporaba ne glede na proizvodnjo. Jasno je, da si mora vsakdo, ki se ukvarja s splošnimi IT ali poslovnimi podatki, vsaj prizadevati za skupno poznavanje MySQL.
Vsakdo, ki še ni seznanjen z relacijskimi sistemi, lahko zgradi zmogljive, varne in hitre sisteme za shranjevanje podatkov MySQL . Programski vmesniki in sintaksa MySQL so tudi idealni prehodi v ogromen svet drugih znanih shramb strukturiranih podatkov in poizvedovalnih jezikov.

Pregled MySQL

MySQL je zapisano v C++ in C . Razčlenjevalnik SQL MySQL je napisan v yacc vendar pa uporablja doma pripravljen leksikalni analizator. MySQL implementira na različnih sistemskih platformah, vključno s Tru64, Sanos, SCO UnixWare, SCO OpenServer, SunOS, Symbian, Oracle Solaris, QNX, OS/2 Warp, OpenSolaris, OpenBSD, Novell NetWare, NetBSD, Microsoft Windows, macOS, Linux, IRIX, IBM i, eComStation, ArcaOS, HP-UX, FreeBSD, BSDi in AIX. Na voljo so tudi vrata MySQL za OpenVMS.
Odjemalske knjižnice in sama strežniška programska oprema MySQL uporabljajo distribucijo dvojnega licenciranja. Na voljo so pod 2. različico GPL ali lastniško licenco. Podporo lahko prejmete z uradnim priročnikom. Poleg tega je brezplačna podpora na voljo v različnih oblikah in kanalih IRC. Oracle omogoča plačljivo podporo s svojimi Izdelki MySQL Enterprise . Razlikujejo se tudi po obsegu in ceni storitev. Poleg tega obstajajo številke organizacij tretjih oseb, ki nudijo storitve in podporo.
MySQL je pridobil različne pozitivne kritike in ti recenzenti so opazili, da se 'izjemno dobro izvaja v povprečnem primeru' in da so 'prisotni vmesniki razvijalca in dokumentacija'. Prav tako je bilo preverjeno, da je pravi večuporabniški, stabilen in hiter večnitni strežnik baze podatkov SQL.

Specifikacije MySQL

Znova zaženite MySQL Ubuntu

MySQL je relacijski

Glavni dejavnik je razlikovanje relacijskih baz podatkov prek drugih obsegov digitalnega shranjevanja pri upravljanju podatkov na visoki ravni. Številne zbirke podatkov, kot je MySQL, vključujejo zapise v zelo kodificiranih, ločenih in več tabelah, v nasprotju z eno vseobsegajočo zbirko ali skladiščem nestrukturiranih ali polstrukturiranih dokumentov.

  • Sistemom relacijskih baz podatkov omogoča boljšo uporabo dejanj, kot je posodabljanje informacij, iskanje podatkov ali bolj zapletena dejanja, kot je združevanje.
  • Za vsako vsebino baze podatkov je določen logični model, ki na primer določa vrednosti, dovoljene v posameznem stolpcu, značilnosti pogledov in tabel ali kako so indeksi povezani iz dveh različnih tabel.
  • Več relacijskih modelov je znanih iz različnih razlogov.
  • Spodbujajo uporabnike z deklarativnimi in intuitivnimi programskimi jeziki, ki bazi podatkov v bistvu dajejo navodila, kakšen rezultat je želen v jeziku.
  • Delo premakne v mehanizme SQL in RDBMS za boljše varčevanje in uveljavljanje logičnih pravil dragocene delovne sile in virov.

Odprtokodno

Vsako podjetje ali posameznik lahko svobodno širi, objavlja, spreminja in uporablja odprtokodno kodno bazo MySQL podjetja Oracle. Programska oprema je objavljena na GNU GPL (splošna javna licenca) .

  • Za kodo MySQL, ki jo je treba vključiti ali integrirati v komercialno aplikacijo (ali kadar odprtokodna programska oprema ni prednostna naloga), lahko številna podjetja kupijo izdajo s komercialno licenco pri Oraclu.
  • Te alternative ponujajo podjetjem dodatno prilagodljivost, če se odločijo za implementacijo s MySQL .
  • Skupnostna in javna narava odprtokodnih različic bogatita spletno podporo in dokumentacijsko kulturo MySQL, obenem pa zagotavljata, da se na novo razvite ali trajne zmogljivosti nikoli ne oddaljijo preveč od zahtev uporabnikov.

MySQL je združljiv

MySQL je bil razvit za združljivost z drugimi arhitekturami in tehnologijami, čeprav je pogosto sodeloval s spletnimi storitvami ali internetnimi aplikacijami. Sistem za upravljanje relacijskih baz podatkov deluje v vseh večjih računalniških okoljih, vključno z OS, ki temelji na Unixu, kot je nešteto distribucij Linuxa, Windows , in macOS .
The arhitektura odjemalec-strežnik od MySQL določa, da lahko podpira tudi vrsto ozadij in različnih vmesnikov programiranja. Podatke je mogoče preseliti z MySQL na njegove razcepe ( MariaDB ) in večina drugih sistemov za upravljanje relacijskih baz podatkov zaradi jezikovnih in arhitekturnih podobnosti.

  • Uveljavljena orodja za selitev tretjih oseb in orodja Oracle dodatno omogočajo MySQL premikanje podatkov v in skozi ogromno zbirko skupnih sistemov za shranjevanje, vendar so ti razviti tako, da temeljijo na oblaku ali na mestu uporabe.
  • MySQL se lahko uporablja v centraliziranih ali porazdeljenih, virtualiziranih okoljih in je celo na voljo kot knjižnice za učenje majhnih, testnih, namenskih aplikacij.
  • Zaradi široke združljivosti MySQL z vsemi drugimi programi in sistemi je v večini primerov posebej praktična izbira sistemov za upravljanje relacijskih baz podatkov.

Enostaven za uporabo

Morda je paradigma tabel najbolj intuitivna in omogoča večjo uporabnost, čeprav je relacijska narava MySQL in toge strukture za shranjevanje se lahko zdijo omejujoče. Pravzaprav, MySQL izdaja več priznanj za podporo velikemu možnemu obsegu podatkovnih struktur, prek standardnih, a obogatenih časovnih tipov, datumskih, alfanumeričnih, numeričnih in logičnih do naprednejših geoprostorskih podatkov ali podatkov JSON.

  • Poleg drage vgrajene zbirke funkcij in preprostih tipov podatkov ekosistem MySQL vsebuje tudi vrsto orodij, ki olajšajo vse, od upravljanja strežnika do analize podatkov in poročanja.
  • Ne glede na krovno arhitekturo sistema za upravljanje relacijskih baz podatkov lahko uporabniki najdejo vidik MySQL, ki jim omogoča kodificiranje in modeliranje podatkov, kot želijo.
  • MySQL ostaja najpreprostejša tehnologija baze podatkov za uporabo in učenje.

Značilnosti MySQL

MySQL je na voljo v dveh različnih izdajah: lastniški strežnik Enterprise Server in odprtokodni strežnik skupnosti MySQL. MySQL Enterprise Server je ločen z lastniško serijo razširitev, ki se namestijo kot strežniški vtičniki, vendar distribuira sistem številčenja različice in je razvit z uporabo podobne kodne baze.
Nekatere glavne funkcije različice MySQL 5.6 so razložene spodaj:

Znova zaženite MySQL Ubuntu
  • Podpora za več platform
  • An ANSI SQL 99 široka podmnožica in tudi razširitve.
  • Shranjene procedure s proceduralnimi jeziki, ki se skoraj držijo PSM/SQL.
  • Pogledi, ki jih je mogoče posodobiti
  • Kazalci
  • Sprožilci
  • Informacijska shema
  • Na spletu Jezik za definiranje podatkov (okrajšava za DDL ), če uporabljate InnoDB Storage Engine.
  • Shema zmogljivosti, ki sestavlja in združuje statistične podatke o zmogljivosti poizvedb in izvajanju strežnika za spremljanje namenov.
  • Skupina možnosti načina SQL za nadzor vedenja med izvajanjem, kot je strogi način za upoštevanje standardov SQL.
  • Shranite točke s transakcijami, če uporabite InnoDB Storage Engine (privzeto). Tudi NDB Cluster Storage Engine podpira transakcije.
  • Predpomnjenje poizvedb
  • SSL podpora
  • Skladnost s standardom ACIDče uporabljate NDB in InnoDB Cluster Storage Engines .
  • Podizbirniki (npr. ugnezdeni SELECT-ji )
  • Vgrajena podpora za replikacijo
      Virtualni sinhroni:Samoupravljane skupine strežnika MySQL s podporo za več glavnih bi bilo mogoče implementirati z uporabo vgrajenega vtičnika podvajanja skupine ali Kuhinjski grozd .
  • Sinhrono podvajanje:Večglavna replikacija je na voljo v MySQL Cluster .Polsinhrono podvajanje:Pri tem tipu je replikacija master to slave, pri kateri glavni čaka na replikacijo.Asinhrono podvajanje:Pri tej vrsti od glavnega do podrejenega od enega glavnega do več podrejenih za več glavnih do enega podrejenega.
  • Iskanje po celotnem besedilu in indeksiranje
  • Vgrajena knjižnica baze podatkov
  • Particionirane tabele skupaj z obrezovanjem particij v optimizatorju
  • Podpora Unicode
  • Združevanje v gruče brez skupne rabe iz gruče MySQL
  • Več kot en mehanizem za shranjevanje, ki omogoča izbiro tistega, ki je najbolj primeren za vse tabele v aplikaciji.
  • Veliko izvornih mehanizmov za shranjevanje, vključno z NDB Cluster, Blackhole, CSV, Archive, Federated, Memory (heap), Merge, InnoDB in MyISAM.
  • Združevanje potrditev, zbiranje več kot ene transakcije iz več kot ene povezave skupaj za povečanje števila potrditev na sekundo.
  • Omejitve MySQL

    Pri uporabi nekaj motorjev za shranjevanje razen InnoDB (privzeto) , potem MySQL ni v skladu s celotnim standardom SQL za nekaj implementiranih funkcij, kot so reference tujih ključev. Prav tako je mogoče omejitve preverjanja razčleniti, vendar se jim izogne ​​vsak mehanizem za shranjevanje pred različico MySQL 8.0.15.
    Sprožilci so omejeni na en sam čas/dejanje do različice MySQL 5.7, kar pomeni, da je bilo mogoče določiti največ en sam sprožilec, ki naj se zažene po operaciji, tj. VSTAVI , in en sam prej VSTAVI na podobni mizi. Za poglede ni bilo mogoče določiti nobenih sprožilcev.
    19. januarja 2038 so bile vgrajene funkcije baze podatkov MySQL, kot je npr UNIX_TIMESTAMP vrni 0 po 03:14:07 UTC . Pred kratkim se je poskušalo rešiti vprašanje, ki je bilo uvrščeno v interno čakalno vrsto.

    Uvedba MySQL

    MySQL je mogoče namestiti in zgraditi ročno z uporabo izvorne kode, vendar je v bistvu nameščen z uporabo binarnega paketa, razen če so potrebne edinstvene prilagoditve. Sistem za upravljanje paketov lahko pridobi in namesti MySQL z minimalnim naporom, pogosto so potrebne nadaljnje konfiguracije za prilagajanje optimizacijskih in varnostnih nastavitev v večini distribucij Linuxa.

    Aplikacija visoke razpoložljivosti

    Oracle MySQL zagotavlja aplikacije z visoko razpoložljivostjo z mešanico orodij, vključno z Lupina MySQL in usmerjevalnik MySQL . Temeljijo na odprtokodnih orodjih in replikaciji skupine. MariaDB ponuja enako ponudbo v nasprotju z izdelki.

    Kako znova zagnati strežnik MySQL?

    Uporabimo lahko ukaz, tj. storitev' za izvajanje običajnih operacij, kot so zagon, zaustavitev in ponovni zagon strežnika MySQL v Ubuntuju. Najprej se moramo prijaviti v naš spletni strežnik in vnesti enega od naslednjih ukazov.
    Za zagon strežnika MySQL v Ubuntu lahko vnesemo spodnji ukaz:

     $ sudo systemctl start mysql.service $ sudo systemctl status mysql.service 

    Znova zaženite MySQL Ubuntu

    Za zaustavitev strežnika MySQL v Ubuntu lahko vnesemo spodnji ukaz:

     $ sudo systemctl stop mysql.service $ sudo systemctl status mysql.service 

    Znova zaženite MySQL Ubuntu

    Za ponovni zagon strežnika MySQL v Ubuntu lahko vnesemo spodnji ukaz:

     $ sudo systemctl restart mysql.service 

    Vnesemo lahko spodnji ukaz za preverjanje statusa strežnika MySQL v Ubuntuju (ne glede na to, ali se izvaja ali ne):

     $ sudo systemctl status mysql.service 

    Znova zaženite MySQL Ubuntu