Het installeren van MySQL op Debian biedt een robuuste en flexibele database-infrastructuur die geschikt is voor een breed scala aan toepassingen en diensten. MySQL staat bekend om zijn schaalbaarheid, betrouwbaarheid en stabiliteit. Een correcte configuratie zorgt voor efficiënte werking en betere prestaties van het databasesysteem.
Deze combinatie is bijzonder waardevol voor systeembeheerders, database-analisten en bedrijven die een betrouwbare oplossing zoeken voor het beheren van grote hoeveelheden gegevens. Bovendien maken de uitgebreide documentatie en community van MySQL het eenvoudiger om problemen op te lossen en de werking te optimaliseren.
In deze handleiding laten we stap voor stap zien hoe je MySQL op Debian installeert en configureert.
Los repositorios predeterminados no contienen el paquete del servidor de bases de datos MySQL en Debian. Para instalarlo en un sistema Linux, siga las instrucciones que se indican a continuación. Descargaremos la versión más reciente de MySQL.
Download het repository-configuratiebestand van MySQL in .deb
-indeling:
wget https://dev.mysql.com/get/mysql-apt-config_0.8.30-1_all.deb
Let op: Controleer op de officiële MySQL-website of dit de meest recente versie is.
Gebruik het .deb
-bestand om de installatie te initialiseren via dpkg
:
sudo dpkg -i mysql-apt-config_0.8.30-1_all.deb
Beantwoord de vragen in de configuratie-interface. Selecteer bijvoorbeeld "MySQL Server & Cluster" en druk op Enter.
Om een specifieke versie te kiezen (zoals mysql-8.4-lts
), scroll omlaag in de lijst, selecteer de gewenste versie en bevestig met OK.
Werk de pakketindex bij om de nieuwe MySQL-informatie te verwerken:
sudo apt update
Debian maakt het installeren van MySQL eenvoudig via het standaardpakketbeheersysteem. Gebruik het volgende commando:
sudo apt install mysql-server -y
Tijdens de installatie wordt je gevraagd een root-wachtwoord in te stellen. Kies een sterk wachtwoord en bevestig.
Controleer of de installatie gelukt is met:
mysql --version
Stel MySQL zo in dat het automatisch start bij het opstarten van de server:
sudo systemctl enable mysql
Start vervolgens de MySQL-dienst handmatig:
sudo systemctl start mysql
Controleer de status van de dienst:
sudo systemctl status mysql
Voordat je poort 3306
opent voor externe clients, raden we aan om onze handleiding Een SSH-tunnel maken voor MySQL te bekijken. Hiermee kun je verbindingen via SSH tunellen en voorkom je dat MySQL direct via het internet toegankelijk is.
Het root-wachtwoord dat je tijdens de installatie hebt ingesteld, beschermt het hoofdgebruikersaccount van MySQL. Maar MySQL wordt standaard geïnstalleerd met enkele onveilige instellingen, zoals anonieme gebruikers en de mogelijkheid tot root-toegang op afstand.
Om de installatie beter te beveiligen, gebruik je het volgende script:
sudo mysql_secure_installation
Je wordt gevraagd of je het onderdeel VALIDATE PASSWORD
wilt inschakelen om sterke wachtwoorden af te dwingen. Typ Y
en druk op Enter als je dat wilt.
Daarna moet je enkele beveiligingsopties instellen:
Stel een root-wachtwoord in: Kies een sterk wachtwoord en voer het opnieuw in ter bevestiging. Selecteer indien gewenst het gewenste beveiligingsniveau (bijv. niveau 2
voor alleen sterke wachtwoorden).
Verwijder anonieme gebruikers: Typ Y
en druk op Enter om deze accounts te verwijderen.
Schakel root-toegang vanaf externe hosts uit: Typ Y
om deze optie te blokkeren en zo aanvallen van buitenaf te beperken.
Verwijder de testdatabase: Typ Y
om deze onnodige standaarddatabase te verwijderen.
Gebruik de MySQL-clienttool om verbinding te maken met de database en toegang te krijgen tot de MySQL-console.
Voer het root-wachtwoord in dat je tijdens de installatie hebt ingesteld. Je komt dan terecht in de MySQL-shell, waar je algemene opdrachten kunt uitvoeren op de database.
sudo mysql -u root -p
Het is een goede praktijk om voor jouw applicaties een aparte database en gebruiker aan te maken in plaats van de rootgebruiker te gebruiken. Volg de onderstaande instructies:
Maak eerst een database aan. In dit voorbeeld gebruiken we hostmandb
:
CREATE DATABASE hostmandb;
Bekijk de lijst met databases om te bevestigen dat hostmandb
is aangemaakt:
SHOW DATABASES;
Creëer een nieuwe gebruiker met een sterk wachtwoord. In dit voorbeeld maken we gebruiker minhal
met het wachtwoord Qwer@1234
. Vervang deze waarden door je eigen gegevens:
CREATE USER 'minhal'@'localhost' IDENTIFIED BY 'Qwer@1234';
Verleen de gebruiker volledige toegang tot de hostmandb
database:
GRANT ALL PRIVILEGES ON hostmandb.* TO 'minhal'@'localhost';
Voer dit commando uit om de wijzigingen toe te passen:
FLUSH PRIVILEGES;
Gebruik het volgende commando om af te sluiten:
EXIT;
Log in bij MySQL als de gebruiker minhal
om de toegang te testen:
sudo mysql -u minhal -p
Voer het wachtwoord van minhal
in wanneer daarom wordt gevraagd.
Controleer vervolgens of de database toegankelijk is:
SHOW DATABASES;
Als je MySQL op afstand wilt benaderen vanaf een andere server of client, moet je de server configureren om externe verbindingen toe te staan. Volg deze stappen:
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
bind-address
en wijzig deze:bind-address = 0.0.0.0
sudo systemctl restart mysql
sudo mysql -u root -p
GRANT ALL PRIVILEGES ON hostmandb.* TO 'minhal'@'localhost';
FLUSH PRIVILEGES;
EXIT;
Als er een firewall actief is op je server, moet je poort 3306
openen om MySQL-verkeer toe te staan. Volg de onderstaande stappen:
sudo ufw allow mysql
sudo ufw enable
sudo ufw reload
Regelmatige back-ups zijn essentieel om gegevensverlies te voorkomen. MySQL biedt de mysqldump
-tool voor het maken van back-ups.
Gebruik het volgende commando om een back-up te maken van de hostmandb
database als een .sql
-bestand:
sudo mysqldump -u root -p hostmandb> hostmandb_backup.sql
Om een back-up te maken van alle databases op de server:
sudo mysqldump -u root -p --all-databases > all_databases_backup.sql
Gebruik het volgende commando om de back-up van hostmandb
te herstellen:
sudo mysql -u root -p hostmandb < hostmandb_backup.sql
Afhankelijk van de werklast en beschikbare serverbronnen kun je instellingen aanpassen om de prestaties van MySQL te optimaliseren. De volgende stappen helpen je om MySQL efficiënter te laten draaien:
De InnoDB buffer pool slaat gegevens en indexen in het geheugen op. Het vergroten van deze buffer kan de prestaties verbeteren. Open het MySQL-configuratiebestand:
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
Voeg de volgende regel toe of pas deze aan:
innodb_buffer_pool_size = 1G
Pas de waarde aan op basis van het beschikbare RAM-geheugen op je server.
De query cache slaat resultaten van SELECT
-query's op. Het inschakelen ervan kan de prestaties verbeteren bij herhaald gebruik van dezelfde query's. Bewerk het .cnf
-configuratiebestand:
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
Voeg de volgende regels toe of bewerk ze indien nodig:
query_cache_type = 1
query_cache_size = 64M
Optimaliseer regelmatig je tabellen (zoals de customers
-tabel in hostmandb
) om verspilde ruimte terug te winnen:
USE hostmandb;
OPTIMIZE TABLE customers;
Gebruik tools zoals MySQL Workbench of mysqltuner
om inzicht te krijgen in de werking van je database en suggesties te krijgen voor optimalisatie. Installeer mysqltuner
met:
sudo apt install mysqltuner
Voer mysqltuner
uit om aanbevelingen te bekijken:
sudo mysqltuner
Het opzetten van een MySQL-omgeving is essentieel in de hedendaagse digitale wereld. Door deze gids te volgen kun je MySQL veilig installeren, configureren en gebruiken. Deze aanpak verhoogt niet alleen de beveiliging, maar verbetert ook de efficiëntie van onderhoud op afstand. Het helpt om inbreuken te voorkomen en de vertrouwelijkheid van je gegevens te waarborgen.
In dit artikel heb je een gedetailleerde handleiding gekregen voor de installatie van MySQL op Debian. We raden aan om je MySQL-server regelmatig te monitoren en te optimaliseren om maximale prestaties en betrouwbaarheid te garanderen.
Bovendien biedt Hostman vooraf geconfigureerde en gebruiksklare cloud-databases aan, waaronder cloud MySQL.