Zoeken op website

Wat is MySQL? Hoe werkt MySQL?


MySQL is 's werelds populairste open-source relationele databasebeheersysteem (RDBMS) op ondernemingsniveau dat wordt gebruikt door Facebook, Google, Adobe, Alcatel Lucent en Zappos, en door veel online websites/applicaties.

Het is ontwikkeld, gedistribueerd en ondersteund door Oracle Corporation. Het is een platformonafhankelijke, krachtige, flexibele en uitbreidbare relationele database die is gebaseerd op de gestandaardiseerde SQL (Structured Query Language) taal die wordt gebruikt om databases te maken en te manipuleren.

De nieuwste versie van MySQL (versie 8.0 op het moment van schrijven) wordt geleverd met ondersteuning voor NoSQL (“Not Only SQL”) documentdatabases. Het kan worden geïnstalleerd in Linux, macOS en andere UNIX-achtige besturingssystemen en Windows.

MySQL downloaden

  • MySQL Community-editie downloaden
  • MySQL Enterprise-editie downloaden

De MySQL-databasesoftware is open source en maakt gebruik van de GPL (GNU General Public License). Belangrijk is dat het wordt aangeboden in twee verschillende edities: de open-source MySQL Community Server die u kunt downloaden, toegang krijgt tot de broncode en gratis kunt gebruiken, en de eigen MySQL Enterprise editie en andere commerciële producten waarvoor een jaarabonnement vereist is en die professionele ondersteuning en vele andere voordelen bieden.

MySQL wordt voor een breed scala aan doeleinden gebruikt, waaronder webdatabases (het meest voorkomende gebruik), datawarehousing, e-commerce en logtoepassingen. Het is een van de vaak geïnstalleerde software om een LAMP in te stellen (Linux + Apache + MySQL + PHP) of LEMP (Linux + Engine-X + MySQL + PHP ) stapel gebruikt voor webontwikkeling en het hosten van online contentmanagementsystemen zoals WordPress, Magneto, Joomla, Drupal< en vele anderen. Naast PHP ondersteunt het ook vele andere talen, waaronder Perl, Node.js, Python, enzovoort.

Bekijk deze gerelateerde handleidingen voor het instellen van uw applicatie met de MySQL-database op Linux.

  • Hoe LAMP Server op CentOS 8 te installeren
  • Hoe LEMP Server op CentOS 8 te installeren
  • Hoe LAMP Stack te installeren met PhpMyAdmin in Ubuntu 20.04
  • Hoe LEMP Stack te installeren met PhpMyAdmin in Ubuntu 20.04
  • Hoe WordPress met Apache te installeren in Ubuntu 20.04

Hoe werkt MySQL?

Zoals de meeste databasebeheersystemen heeft MySQL een client-server-architectuur en kan het worden gebruikt in een netwerkomgeving. Het serverprogramma bevindt zich op hetzelfde fysieke of virtuele systeem waar de databasebestanden zijn opgeslagen en is verantwoordelijk voor alle interacties met de databases.

Verschillende clientprogramma's zoals MySQL tools voor databasebeheer of applicaties die in andere programmeertalen zijn geschreven, kunnen verbinding maken met de server en databaseverzoeken doen. De server verwerkt clientverzoeken en stuurt de resultaten terug naar de client.

Een client kan zich op hetzelfde systeem bevinden als de server of op een externe host en databaseverzoeken via een netwerk- of internetverbinding naar de server verzenden. Belangrijk is dat de MySQL-server actief moet zijn voordat clients er verbinding mee kunnen maken.

Belangrijkste kenmerken van MySQL

De MySQL maakt gebruik van een meerlaags serverontwerp met onafhankelijke modules. De server is multi-threaded, multi-user, schaalbaar en robuust ontworpen voor bedrijfskritische, zwaarbelaste productiesystemen. Het biedt zowel transactionele als niet-transactionele opslagmotoren en ondersteunt de toevoeging van andere opslagmotoren.

  • MySQL maakt gebruik van zeer snelle B-tree tabellen met indexcompressie, een zeer snel op threads gebaseerd geheugentoewijzingssysteem, en voert zeer snelle joins uit met behulp van geoptimaliseerde geneste lus-join.
  • Het ondersteunt vele gegevenstypen, zoals ondertekende/niet-ondertekende gehele getallen, typen met drijvende komma (float en double), char en varchar, binair en varbinair, blob en tekst, datum, datetime en tijdstempel, jaar, set, enum en OpenGIS ruimtelijke soorten.
  • MySQL ondersteunt ook gegevensredundantie en hoge beschikbaarheid (HA) via master-slave-replicatie, clustering met meerdere knooppunten en back-up en herstel/herstel. Het biedt een breed scala aan back-uptypen en -strategieën waaruit u de methoden kunt kiezen die het beste aansluiten bij de vereisten voor uw implementatie.
  • De beveiligingsfuncties omvatten gebruikersaccountbeheer en toegangscontrole, hostgebaseerde verificatie, gecodeerde verbindingen, verschillende componenten en plug-ins (zoals plug-ins voor authenticatie, plug-ins voor verbindingscontrole, component voor wachtwoordvalidatie en nog veel meer) die beveiliging implementeren, evenals FIPS (Federal Information Processing Standards 140-2 (FIPS 140-2)) modus aan de serverzijde die van toepassing is op cryptografische bewerkingen die door de server worden uitgevoerd.

Bovendien kunt u ook voor extra beveiliging zorgen door de best practices voor MySQL/MariaDB-beveiliging voor Linux te volgen. Maar zorg er zoals altijd voor dat u een goede netwerk- en serverbeveiliging heeft geïmplementeerd, zodat u verzekerd bent van een algehele beveiliging van de databaseserver.

MySQL-client en -hulpmiddelen

MySQL wordt geleverd met verschillende clientprogramma's, zoals de populaire opdrachtregelhulpprogramma's: mysql, mysqladmin en mysqldump, voor het beheren van databases. Om verbinding te maken met de MySQL Server kunnen clients verschillende protocollen gebruiken, bijvoorbeeld TCP/IP-sockets op elk platform of UNIX-domeinsockets op UNIX-systemen zoals Linux.

Om MySQL-instructies vanuit een andere taal of omgeving te verbinden en uit te voeren, zijn er op standaarden gebaseerde MySQL-connectoren (die connectiviteit bieden met de MySQL-server voor clienttoepassingen) en API's voor de meeste populaire programmeertalen (om toegang op laag niveau te bieden tot MySQL-bronnen met behulp van het klassieke MySQL-protocol of het X-protocol).

Enkele van de populaire connectoren en API's zijn ODBC (Open Database Connectivity), Java (JDBC – Java Database Connectivity), Python, PHP, Node.js, C++, Perl, Ruby en native C en ingebedde MySQL-instanties.

De volgende artikelen over MySQL vindt u nuttig:

  • Hoe u de nieuwste MySQL 8 op Debian 10 installeert
  • 15 Handige MySQL/MariaDB-prestatieafstemming en optimalisatietips
  • Handige tips voor het oplossen van veelvoorkomende fouten in MySQL
  • Hoe u het root-wachtwoord kunt resetten in MySQL 8.0
  • Hoe u de standaard MySQL/MariaDB-poort in Linux kunt wijzigen
  • 4 Handige opdrachtregelhulpmiddelen om MySQL-prestaties in Linux te controleren