Uvod u MySQL Server
Što je MySQL Server?
Na tržištu za upravljanje bazama podataka dostupni su mnogi RDBMS (sustavi), a među njima je najpopularniji MySQL. MySQL je open source sustav za upravljanje relacijskim bazama podataka (RDBMS) i temelji se na strukturiranom jeziku upita (SQL - jezik za upravljanje bazom podataka i obavljanje CRUD operacija poput stvaranja, čitanja, ažuriranja i brisanja.). ovdje razgovaramo o MySQL poslužitelju.
MySQL, kratko putovanje:
- Prvo je kreirano i u vlasništvu švedske tvrtke MySQL AB s prvim početnim izdanjem 1995., 23. svibnja.
- U 2008, MySQL AB je kupio Sun Microsystems u ugovoru od 1 milijarde.
- Sun Microsustave je 2010. godine Oracle dodatno kupio.
- Najnovija inačica MySQL poslužitelja je 8.0 koja je objavljena 19. travnja 2018. godine.
MySQL se virtualno može izvoditi na bilo kojoj platformi kao što su Linux, Solaris i Windows, a najpopularniji je i najrašireniji RDBMS jer je open source i besplatni DB Server koji pruža puno napredne funkcionalnosti baze podataka.
Nekoliko je primjera gdje se koristi MySQL Server:
- Google, Facebook, Yahoo i mnogi drugi Tech divovi zaposlili su MySQL kako bi poboljšali svoje mogućnosti obrade podataka.
- MySQL je vrlo važna komponenta za LAMP, a to je platforma za web razvoj s Linuxom kao operativnim sustavom, Apache kao web poslužitelj, MySQL kao RDBMS i PHP kao programski jezik. Unatoč tome, Python ili Perl mogu se upotrebljavati umjesto PHP-a kao programski ili skriptni jezik.
- Može se koristiti bilo gdje, gdje se podaci trebaju pohraniti na relacijski način, tj. U tabelarnom formatu. Svaka tablica ima primarni ključ i redovi se mogu međusobno odnositi pomoću ovog primarnog ključa.
Prednosti MySQL poslužitelja:
-
Prijenosni -
Može se pokretati na ogromnom broju platformi kao što su UNIX, Solaris, Windows, OS / 2, itd.
-
Otvoreni izvor -
Ono što je najvažnije, MySQL je dostupan svima kao softver otvorenog koda i svatko ga može besplatno koristiti pristajući na njegove uvjete i odredbe.
-
Sigurnost -
Sve su MySQL baze podataka vrlo sigurne i zaključane su lozinkama koje su šifrirane pomoću složenih algoritama i nikada ih nije lako prekršiti.
-
Povezivanje -
Na raspolaganju je dobar broj mehanizama za povezivanje s MySQL poslužiteljima kao što su TCP / IP, UNIX utičnice i imenovane cijevi
-
Redovna ažuriranja i kontinuirani razvoj-
Budući da je MySQL platforma otvorenog koda, postoji ogromna zajednica programera i oni redovito objavljuju zakrpe i ažuriranja za MySQL.
Arhitektura MySQL poslužitelja:
Arhitektura MySQL-a sastoji se od sljedećih komponenti:
- MySQL Server
- MySQL klijenti
- Katalog podataka
- Skladišni motor
MySQL se temelji na modelu klijent-poslužitelj.
Izvor: http://actimem.com/wp-content/uploads/2015/09/mysql.png.webp?x78177
MySQL Server:
To je MySQL instanca u kojoj se stvarni podaci spremaju i pohranjuju. Ova komponenta odgovorna je za obradu dolaznih upita koji dolaze od MySQL klijenata i manipulira tablicama baze podataka. Također je odgovoran za prihvaćanje veza s bazom podataka koje dolaze od MySQL klijenata. Važni programi komponente MySQL Server su:
-
MySQL:
To je demonski program MySQL poslužitelja. Radi u pozadini i upravlja zahtjevima MySQL klijenata.
-
mysqld_safe:
To je program koji ponovno pokreće poslužitelj kad god dođe do pogreške. To je bila jedna sigurnosna značajka ovog programa, a druga je ta da on održava zapise podataka o vremenu izvođenja u dnevnik pogreške.
-
mysql.server:
To je uslužni program MySQL koji je dat za pokretanje skripte mysqld_safe.
-
mysqld_multi:
Ovaj se program koristi za upravljanje mnogim mysqld procesima koji slušaju za veze na različitim kanalima povezivanja poput TCP / IP, UNIX Sockets, itd.
Klijenti MySQL:
MySQL klijenti u osnovi su alati koji se koriste za komunikaciju s MySQL poslužiteljem. Drugim riječima, to su programi koji komuniciraju s MySQL poslužiteljem. Primjeri MySQL klijenata su bilo koji programi poput Perl, PHP, Java, MySQL, mysqladmin i alati poput MySQL deump, mysqlcheck, myisamchk. Važni programi pod MySQL klijentima su:
- MySQL je SQL školjka u koju se mogu pisati i izvršavati SQL izjave. Može biti interaktivan ili ne-interaktivan. Ako se koriste interaktivno, rezultati se vraćaju u tabličnom formatu, dok neaktivna upotreba vraća rezultat u formatu odvojen karticama.
- mysqladmin je klijent za administraciju MySQL poslužitelja. Može se koristiti za provjeru konfiguracijskih datoteka, njihovo ažuriranje, provjeru trenutnog stanja poslužitelja, kao i za stvaranje i ispuštanje baza podataka itd.
- mysqldump je uslužni program za klijent i program sigurnosne kopije baze podataka koji izvodi logičke sigurnosne kopije.
- mysqlcheck i myisamchk su klijenti koji se koriste za održavanje održavanja na tablicama baza podataka poput popravka, optimizacije i analize tablica.
Katalog podataka:
Imenik podataka sadrži stvarne podatke koji se pohranjuju kao rezultat tekućih operacija nad bilo kojim aplikacijama / softverom ili poslužiteljima. Uključuje baze podataka, tablice, datoteke s zapisnicima, pohranjene procedure itd.
- Zadana lokacija za datadir u Linuxu je: / var / lib / mysql
- Zadana lokacija za datadir u sustavu Windows je: C: \ ProgramData \ MySQL \ MySQL Server 5.8
- Naziv konfiguracijske datoteke koja sadrži put za datadir je mysqld.cnf
- cnf možete naći na /etc/mysql/mysql.conf.d/mysqld.cnf
- Zaista je moguće promijeniti mjesto pohrane za datadir u slučaju da nekome ponestane dodijeljenog prostora. Molimo vas da prođete ispod članka koji lijepo objašnjava kako se to može postići:
https://www.digitalocean.com/community/tutorials/how-to-move-a-mysql-data-directory-to-a-new-location-on-ubuntu-16-04
Skladišni motor:
Engine za pohranu je softverski modul koji RDBMS koristi za obavljanje CRUD operacija (Stvaranje, čitanje, ažuriranje i brisanje).
Motori za skladištenje podataka su dvije vrste u MySQL-u:
- Transakcijska
- Netransakcijski
Glavna razlika između transakcijskog i non-transakcijskog mehanizma za pohranu je u tome što će transakcijske tablice bilježiti sve operacije baze podataka u datoteci dnevnika, pa čak i ako se MySQL sruši, još uvijek možete vratiti svoje podatke, dok to nije slučaj s beztraktivnim motorima. Ipak, kako bismo istakli, ne-transakcijski motori su mnogo brži i oni imaju i manje prostora na disku. Ispod su neki od pokretačkih motora koji koristi MySQL, a među njima se najviše koristi InnoDB.
Motori za pohranu koje podržava MySQL
- InnoDB
- MyISAM
- Memorija
- CSV
- Sjediniti
- Arhiva
- Savezne
- Crna rupa
- Primjer
Preporučeni članci
Ovo je vodič za MySQL Server. Ovdje u ovom članku proučavali smo primjere, prednosti i arhitekturu MySQL poslužitelja. Možete pogledati i sljedeće članke da biste saznali više -
- Cheat Sheet MySQL
- Što je Tableau server?
- MySQL vs SQL Server