Què és MySQL? Com funciona MySQL?


MySQL és el sistema de gestió de bases de dades relacionals (RDBMS) de codi obert de grau empresarial més popular del món que s'utilitza a Facebook, Google, Adobe, Alcatel Lucent i Zappos i molts llocs web/aplicacions en línia.

Està desenvolupat, distribuït i recolzat per Oracle Corporation. És una base de dades relacional multiplataforma, potent, flexible i extensible que es basa en el llenguatge estandarditzat SQL (Structured Query Language) utilitzat per crear i manipular bases de dades.

La darrera versió de MySQL (en el moment d'escriure la versió 8.0) inclou suport per a bases de dades de documents NoSQL (No només SQL). Es pot instal·lar a Linux, macOS i altres sistemes operatius semblants a UNIX i Windows.

  • Baixa MySQL Community Edition
  • Descarregueu MySQL Enterprise Edition

El programari de bases de dades MySQL és de codi obert, utilitza la GPL (GNU General Public License). És important destacar que s'ofereix en dues edicions diferents: el MySQL Community Server de codi obert que podeu descarregar, accedir al codi font i utilitzar-lo gratuïtament i l'edició patentada MySQL Enterprise i altres productes comercials que requereixen una subscripció anual i inclouen suport professional i molts altres beneficis.

MySQL s'utilitza per a una àmplia gamma de propòsits, incloent bases de dades web (l'ús més comú), emmagatzematge de dades, comerç electrònic i aplicacions de registre. És un dels programaris instal·lats habitualment per configurar una pila LAMP (Linux + Apache + MySQL + PHP) o LEMP (Linux + Engine-X + MySQL + PHP) utilitzada per al desenvolupament web i l'allotjament de sistemes de gestió de continguts en línia com WordPress, Magneto, Joomla, Drupal i molts altres. A part de PHP, també admet molts altres idiomes com Perl, Node.js, Python, etc.

Consulteu aquestes guies relacionades per configurar la vostra aplicació amb la base de dades MySQL a Linux.

  • Com instal·lar el servidor LAMP a CentOS 8
  • Com instal·lar el servidor LEMP a CentOS 8
  • Com instal·lar LAMP Stack amb PhpMyAdmin a Ubuntu 20.04
  • Com instal·lar LEMP Stack amb PhpMyAdmin a Ubuntu 20.04
  • Com instal·lar WordPress amb Apache a Ubuntu 20.04

Com funciona MySQL?

Com la majoria de sistemes de gestió de bases de dades existents, MySQL té una arquitectura client-servidor i es pot utilitzar en un entorn en xarxa. El programa servidor resideix al mateix sistema físic o virtual on s'emmagatzemen els fitxers de la base de dades, i és responsable de totes les interaccions amb les bases de dades.

Diversos programes client com les eines MySQL per a l'administració de bases de dades o qualsevol aplicació que estigui escrita en altres llenguatges de programació, es poden connectar al servidor i fer peticions de bases de dades. El servidor processa les peticions del client i torna els resultats al client.

Un client pot residir al mateix sistema que el servidor o en un amfitrió remot i enviar sol·licituds de base de dades a través d'una xarxa o connexió a Internet al servidor. És important destacar que el servidor MySQL s'ha d'executar perquè els clients s'hi connectin.

Característiques principals de MySQL

El MySQL utilitza un disseny de servidor multicapa amb mòduls independents. El servidor és multifils, multiusuari, escalable i està dissenyat de manera robusta per a sistemes de producció de càrrega pesada i crítics per a la missió. Proporciona motors d'emmagatzematge tant transaccionals com no transaccionals i admet l'addició d'altres motors d'emmagatzematge.

  • MySQL utilitza taules d'arbre B molt ràpides amb compressió d'índex, un sistema d'assignació de memòria basat en fils molt ràpid i executa unions molt ràpides mitjançant unions de bucle imbricat optimitzats.
  • Admet molts tipus de dades, com ara nombres enters signats/sense signe, tipus de coma flotant (float i double), char i varchar, binary i varbinary, blob i text, Data, DateTime i marca de temps, any, set, enumeració, i tipus espacials d'OpenGIS.
  • MySQL també admet la redundància de dades i l'alta disponibilitat (HA) mitjançant la rèplica mestre-esclau, l'agrupació en clúster de diversos nodes i la còpia de seguretat i la recuperació/restauració. Ofereix una àmplia gamma de tipus de còpia de seguretat i estratègies entre les quals podeu triar els mètodes que millor s'adaptin als requisits del vostre desplegament.
  • Les seves funcions de seguretat inclouen la gestió del compte d'usuari i el control d'accés, la verificació basada en l'amfitrió, les connexions xifrades, diversos components i connectors (com ara connectors d'autenticació, connectors de control de connexió, component de validació de contrasenyes i molts més) que implementen seguretat, com ara així com el mode FIPS (Federal Information Processing Standards 140-2 (FIPS 140-2)) al costat del servidor que s'aplica a les operacions criptogràfiques realitzades pel servidor.

A més, també podeu garantir una seguretat addicional seguint les millors pràctiques de seguretat de MySQL/MariaDB per a Linux. Però, com sempre, assegureu-vos d'haver implementat una bona seguretat de xarxa i servidor, per garantir la seguretat integral del servidor de bases de dades.

Client MySQL i eines

MySQL s'envia amb diversos programes client, com ara les populars utilitats de línia d'ordres: mysql, mysqldump, per administrar bases de dades. Per connectar-se al servidor MySQL, els clients poden utilitzar diversos protocols, per exemple, sòcols TCP/IP a qualsevol plataforma o sòcols de domini UNIX en sistemes UNIX com Linux.

Per connectar i executar sentències MySQL des d'un altre llenguatge o entorn, hi ha connectors MySQL basats en estàndards (que proporcionen connectivitat al servidor MySQL per a aplicacions de client) i API per als llenguatges de programació més populars (per proporcionar accés de baix nivell als recursos MySQL mitjançant ja sigui el protocol MySQL clàssic o el protocol X).

Alguns dels connectors i API populars inclouen ODBC (Open Database Connectivity), Java (JDBC - Java Database Connectivity), Python, PHP, Node.js, C++, Perl, Ruby i instàncies C natives i MySQL incrustades.

Trobareu útils els articles següents sobre MySQL:

  • Com instal·lar l'últim MySQL 8 a Debian 10
  • 15 consells útils per a l'optimització i l'optimització del rendiment de MySQL/MariaDB
  • Consells útils per resoldre els errors habituals a MySQL
  • Com restablir la contrasenya d'arrel a MySQL 8.0
  • Com canviar el port predeterminat de MySQL/MariaDB a Linux
  • 4 eines de línia d'ordres útils per supervisar el rendiment de MySQL a Linux