Winkelwagen

/ VPS-Infrastructuur

Alles over de zelfontwikkelde VPS-infrastructuur

Register now

/ Up to date

/ Nieuws

Lancering PerformanceVPS

Meer info
Hulp nodig?

    Sorry, we konden geen resultaten vinden voor jouw zoekopdracht.

    Een MariaDB Database server installeren in CentOS Stream, AlmaLinux of Rocky Linux

    MariaDB is een open source databaseserver dat is afgeleid van MySQL. Samen met Apache en PHP vormt MariaDB de zogeheten LAMP-Stack (maar dan met MariaDB in plaats van MySQL) die gebruikt wordt voor het hosten van dynamische websites (e.g. WordPress).

    MariaDB is de meest gebruikte database-software in Linux en komt bijna geheel overeen met MySQL. In deze handleiding laten wij zien hoe je MariaDB op een VPS met CentOS Stream,  AlmaLinux of Rocky Linux installeert.

    Voer de stappen in dit artikel uit als root user, of gebruik sudo.


    MariaDB installeren en configureren

     

    Stap 1

    Verbind met je VPS via SSH of gebruik de VPS-console en update je VPS:

    dnf -y update

     

    Stap 2

    Via het volgende commando haal je het MariaDB Package Repository setup script binnen en voer je die direct uit. Hiermee configureer je je VPS om packages te kunnen installeren van de MariaDB Package Repository voor MariaDB 11.4 (je bent vrij 11.4 door een andere versie te vervangen):

    curl -LsS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | bash -s -- --mariadb-server-version=11.4

    Je kunt er ook voor kiezen om geen software en versie te specificeren door het onderstaande commando te gebruiken. Hiermee voeg je naast de algemene MariaDB repository ook een repository toe voor MariaDB MaxScale en MariaDB Tools (deze laatste bevat Percona XtraBackup en bijbehorende dependencies):

    curl -sS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | bash

     

    Stap 3

    Installeer nu MariaDB met het commando:

    dnf -y install mariadb-server mariadb

     

    Stap 4

    MariaDB staat na de installatie uit. Schakel het in met het commando:

    systemctl start mariadb
    systemctl enable mariadb

    (Het enable commando is voor de zekerheid: niet iedere versie van MariaDB start automatisch na een herstart van je VPS)


     

    Stap 5

    Voor je gebruik maakt van MariaDB, moet je een aantal beveiligingsopties configureren. Hiervoor gebruik je het commando:

    mariadb-secure-installation

    Het is belangrijk voor de veiligheid van je VPS de aangegeven zorgvuldig door te lopen. Wij raden aan de volgende keuzes te maken in dit proces (highlighted in bold en italic):

    
    NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
          SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!
    
    In order to log into MariaDB to secure it, we'll need the current
    password for the root user. If you've just installed MariaDB, and
    haven't set the root password yet, you should just press enter here.
    
    Enter current password for root (enter for none):
    OK, successfully used password, moving on...
    
    Setting the root password or using the unix_socket ensures that nobody
    can log into the MariaDB root user without the proper authorisation.
    
    You already have your root account protected, so you can safely answer 'n'.
    
    Switch to unix_socket authentication [Y/n] n
     ... skipping.
    
    You already have your root account protected, so you can safely answer 'n'.
    
    Change the root password? [Y/n] Y
    New password:
    Re-enter new password:
    Password updated successfully!
    Reloading privilege tables..
     ... Success!
    
    
    By default, a MariaDB installation has an anonymous user, allowing anyone
    to log into MariaDB without having to have a user account created for
    them.  This is intended only for testing, and to make the installation
    go a bit smoother.  You should remove them before moving into a
    production environment.
    
    Remove anonymous users? [Y/n] y
     ... Success!
    
    Normally, root should only be allowed to connect from 'localhost'.  This
    ensures that someone cannot guess at the root password from the network.
    
    Disallow root login remotely? [Y/n] y
     ... Success!
    
    By default, MariaDB comes with a database named 'test' that anyone can
    access.  This is also intended only for testing, and should be removed
    before moving into a production environment.
    
    Remove test database and access to it? [Y/n] y
     - Dropping test database...
     ... Success!
     - Removing privileges on test database...
     ... Success!
    
    Reloading the privilege tables will ensure that all changes made so far
    will take effect immediately.
    
    Reload privilege tables now? [Y/n] y
     ... Success!
    
    Cleaning up...
    
    All done!  If you've completed all of the above steps, your MariaDB
    installation should now be secure.
    
    Thanks for using MariaDB!
    

    Firewall en externe verbindingen

    SQL-poort 3306 staat niet automatisch open in je Firewall (standaard is dit Firewalld). Voor de meeste gevallen is dit ook zeker niet nodig: Stel dat je bijvoorbeeld een WordPress-website host op je VPS, dan zal je Apache (of Nginx) server lokaal via de localhost met MariaDB verbinden en is het niet nodig de SQL-poort voor de buitenwereld open te zetten.

    Heb je toch een use case waarbij je de SQL-poort beschikbaar moet maken voor een andere server, zet dan afhankelijk van je use case de SQL-poort enkel open voor je private network, of sta enkel specifiek per IP toegang tot de SQL-poort toe in Firewalld met de syntax:

    firewall-cmd --permanent --zone=public --add-rich-rule='
    rule family="ipv4"
    source address="123.123.123.123"
    port protocol="tcp" port="3306" accept'

    Vervang 123.123.123.123 door het IP-adres dat je toegang wil geven en herlaad daarna je firewall met:

    firewall-cmd --reload

    Daarnaast 'bind' MariaDB standaard aan de localhost (127.0.0.1) en is daardoor niet extern bereikbaar. Om MariaDB extern bereikbaar te maken moet je het bind-adress aanpassen. Open hiervoor de configuratie van MariaDB:

    nano /etc/my.cnf.d/server.cnf

    Vervang de regel:

    #bind-address=0.0.0.0

    Door de regel:

    bind-address=123.123.123.123

    Waarbij je 123.123.123.123 vervangt door het IP-adres van je VPS waarop je wil dat MariaDB bind. Herstart daarna MariaDB met het commando:

    systemctl restart mariadb

    MariaDB beheren

    Voor het beheren van MariaDB zijn er twee gangbare opties: command-line of phpMyAdmin.

    phpMyAdmin: Voor het installeren en gebruiken van phpMyAdmin, zie deze handleiding.

    Command-line: In dit artikel leggen wij uit hoe je MariaDB beheert met behulp van een SQL-shell via command-line.

    Voor databasebeheer via PHP raden wij aan de dcumentatie van w3schools.com te raadplegen.


     

    Je MariaDB-server is nu klaar voor gebruik! Wil je weten hoe je een MariaDB-server redundant kunt inrichten? Neem dan een kijkje in onze redundancy series.

    Mocht je aan de hand van dit artikel nog vragen hebben, aarzel dan niet om onze supportafdeling te benaderen. Je kunt hen bereiken via de knop 'Neem contact op' onderaan deze pagina.

    Kom je er niet uit?

    Ontvang persoonlijke hulp van onze supporters

    Neem contact op