mariadb

mariadb Symbolfoto
mariadb Datenbank Photo by panumas nikhomkhai on Pexels.com

Eine Datenbank ist für unseren Homserver mehr oder weniger Pflicht. mariadb ist ein unter GPL stehendes Datenbankmangementsystem, dass als freie Alternative von MySQL abgespalten wurde und zu diesem 100% kompatibel ist (zumindest habe ich noch keine Unterschiede feststellen können)

mariadb installieren

Als erstes legst du das Verzeichnis für das Volume an.

sudo mkdir /opt/mariadb

Wie schon bekannt, brauchst du die nachfolgende docker-compose.yml Datei

version: '3.1'
services:
  mariadb:
    image: linuxserver/mariadb:latest
    container_name: "mariadb"
    restart: always
    environment:
      MYSQL_PASSWORD: "<passwort>"
      MYSQL_ROOT_PASSWORD: "<passwort>"
      TZ: "Europe/Berlin"
    ports:
      - "3306:3306"
    volumes:
      - /opt/mariadb:/config

Denk daran, eigene Passwörter zu vergeben.
Den Container startest du wie üblich mit

docker-compose up -d

mariadb verwenden

Jetzt musst du den Client für mariadb installieren

sudo apt install mariadb-client

Wenn du dabei gefragt wirst, welche Services neugestartet werden sollen, änderst du an der Auswahl nichts und wählst direkt „OK“ aus.

Um dich mit der Datenbank zu verwenden startest du den Client mit

mariadb -h 127.0.0.1 -u root -p

Nach Eingabe des Passworts für den root User, dass du in der docker-compose.yml Datei vergeben hast, bist du mit dem Datenbanksystem verbunden.

Zunächst solltest du dir einen Account anlegen, unter dem du zukünftig in der Datenbank arbeitest.

CREATE USER '<username>'@'192.168.178.%' IDENTIFIED BY '<passwort>';

Der Account besteht aus dem Usernamen und dem Hostteil. Der Hostteil besteht bei mir aus den ersten drei Teilen der IP-Adressen in meinem Heimnetzwerk und einem ‚%‘, so dass ich mich von jedem Rechner in meinem lokalen Netz einloggen kann.

<username> und <passwort> suchst du dir selber aus, die IP-Adresse wird dir üblicherweise vom Access-Point zugewiesen, falls du es nicht Pi-Hole als DNS-Server benutzt.

Der Account benötigt jetzt noch alle Rechte, um mit dem Datenbanksystem arbeiten zu dürfen.

GRANT ALL PRIVILEGS ON *.* TO '<username>'@'192.168.178.%';

Schreibe einen Kommentar

Cookie Consent Banner von Real Cookie Banner