PMG2426 4/DB Beleg/Janis

Aus ProgrammingWiki

Wiki-Quelltext dieser Seite.

<language>SQL</language>
<html>
<head>
<style>
body {
  font-family: Arial, sans-serif;
  line-height: 1.5;
  max-width: 1600px;
  margin: 20px auto;
  padding: 0 20px;
}

h1 {border-bottom: 2px solid; padding-bottom: 5px;}
h3 {margin-top: 20px; text-decoration: underline;}

</style>
</head>
<body>
<h1>Homelab</h1><br>
<h3>Ziele</h3>

<div>
<p>
Das Ziel dieses Projekts ist die Erstellung einer zentralen Dokumentation für ein privates Home-Lab. Da in einem Netzwerk mit mehreren Servern und Containern schnell der Überblick über belegte Ports und IP-Adressen verloren geht, soll diese Datenbank Redundanzen vermeiden und Konflikte verhindern.
</p>
</div>

</body>
</html>

<code id="696ded2bc7314"></code>
<run id="696ded2bc7380"></run>

<html>


<h2>3. Kritische Reflexion & Modellierung</h2>

<h3>Normalformen</h3>
<p>
Die Datenbank befindet sich in der 3. Normalform. Wären Attribute wie <i>IP-Adresse</i> direkt in der Tabelle <i>Service</i> gespeichert, entstünden Redundanzen. Durch die Auslagerung in die Tabelle <i>System</i> wird jeder Server nur einmal definiert.
</p>

<h3>Kardinalitäten</h3>
<ul>
<li><strong>1:n (System zu Service):</strong> Ein Server kann mehrere Services hosten, aber ein Service läuft (in diesem Modell) auf genau einem Host.</li>
<li><strong>n:m (Service zu Kategorie):</strong> Ein Service kann mehrere Kategorien haben (z.B. AdGuard ist "Network" und "Security").
</ul>

<h3>Quellen:</h3>
<a href='https://dietpi.com/'>dietpi.com</a><br>
<a href='https://docs.hetzner.com/de/cloud/servers/primary-ips/primary-ip-configuration/'>hetzner.com</a><br>
<a href='https://hub.docker.com/r/vaultwarden/server'>Vaultwarden</a><br>
<a href='https://hub.docker.com/r/adguard/adguardhome'>AdGuard</a><br>
<a href='https://www.portainer.io/'>Portainer</a><br>
<a href='https://nginx.org/'>Nginx</a><br>
<a href='https://www.wireguard.com/'>Wireguard</a><br>
<a href='https://heimdall.site/'>Heimdall</a><br>
<a href=''> </a><br>
</html>