|
|
| Zeile 1: |
Zeile 1: |
| == Löschen der Datenbank in PostgreSQL == | | ==Moodle Installieren== |
| <pre>
| | Um Moodle 5 mit Git zu installieren, folge diesen Schritten: |
| sudo -u postgres -i
| |
| psql -c "drop database asp;"
| |
| </pre>
| |
|
| |
|
| == Erstelle neue Datenbank==
| | # Voraussetzungen |
| <pre>
| | * Git ist installiert (`git --version`) |
| createdb -E UTF8 -O thorsten asp;
| | * PHP, Webserver (Nginx), und Datenbank (Postgrsql) sind eingerichtet |
| exit;
| |
| </pre>
| |
| == ASP.NET Core MVC mit Individual-Authentifizierung installieren ==
| |
| | |
| Um ein neues ASP.NET Core MVC-Projekt mit Benutzerverwaltung (Individual User Accounts) zu erstellen, führe folgenden Befehl im Terminal aus:
| |
| | |
| <syntaxhighlight lang="bash">
| |
| dotnet new mvc --auth Individual -o MeinMvcProjekt
| |
| cd MeinMvcProjekt
| |
| </syntaxhighlight>
| |
| | |
| Dadurch wird ein neues MVC-Projekt mit integrierter Benutzerregistrierung, Anmeldung und Rollenverwaltung erstellt.
| |
| | |
| ==PostgreSQL==
| |
| Um die benötigten Pakete für die Identitätsverwaltung und die Datenbankanbindung zu installieren, führe folgende Befehle aus:
| |
| | |
| <syntaxhighlight lang="bash">
| |
| dotnet add package Npgsql.EntityFrameworkCore.PostgreSQL
| |
| dotnet add package Microsoft.EntityFrameworkCore.Tools
| |
| </syntaxhighlight>
| |
| | |
| Das erste Paket integriert die Identitätsverwaltung in Entity Framework Core, das zweite Paket stellt die PostgreSQL-Unterstützung bereit.
| |
| | |
| === Migrationen für die Identitätsdatenbank anwenden ===
| |
| | |
| Führe anschließend die Migrationen aus, um die benötigten Tabellen für die Benutzerverwaltung in der Datenbank zu erstellen:
| |
| | |
| <syntaxhighlight lang="bash">
| |
| dotnet ef database update
| |
| </syntaxhighlight>
| |
| | |
| Jetzt ist die Benutzerregistrierung und -anmeldung im Projekt verfügbar.
| |
| == Migrations löschen in ASP.NET Core ==
| |
| | |
| === Begründung für das Löschen von Migrationen in ASP.NET Core ===
| |
| | |
| Es kann verschiedene Gründe geben, warum man alle Migrationen in einem ASP.NET Core-Projekt löschen möchte:
| |
| | |
| * '''Fehlerhafte Migrationen:''' Wenn Migrationen fehlerhaft erstellt wurden oder die Datenbankstruktur nicht wie gewünscht abbilden, ist es oft einfacher, alle Migrationen zu löschen und von vorne zu beginnen. | |
| * '''Strukturelle Änderungen:''' Bei grundlegenden Änderungen am Datenmodell (z.B. Umbenennung von Tabellen, Entfernen vieler Entitäten) kann es sinnvoll sein, die Migrationen zurückzusetzen, um eine saubere Ausgangsbasis zu schaffen.
| |
| * '''Projekt-Neustart:''' In frühen Entwicklungsphasen, wenn sich das Datenmodell noch häufig ändert, ist das Löschen und Neuerstellen der Migrationen ein gängiger Schritt.
| |
| * '''Synchronisation mit der Datenbank:''' Wenn die Datenbank und die Migrationen nicht mehr synchron sind, kann ein Reset helfen, Inkonsistenzen zu beheben.
| |
| | |
| Beachte, dass beim Löschen der Migrationen alle bisherigen Änderungen verloren gehen. Daher sollte dieser Schritt nur durchgeführt werden, wenn keine produktiven Daten betroffen sind oder ein Backup existiert.
| |
| | |
| | |
| Um alle Migrationen im Ordner '''Migrations''' zu löschen, kannst du das folgende Kommando im Terminal ausführen:
| |
| | |
| <syntaxhighlight lang="bash">
| |
| rm -rf Migrations
| |
| </syntaxhighlight>
| |
| | |
| Dadurch wird der gesamte Migrations-Ordner und alle darin enthaltenen Dateien entfernt.
| |
| | |
| '''Achtung:''' Stelle sicher, dass du ein Backup hast, bevor du diesen Befehl ausführst, da alle Migrationen unwiderruflich gelöscht werden.
| |
| | |
| Um eine neue Migration mit dem Namen '''InitialCreate''' zu erstellen, verwende folgenden Befehl im Terminal:
| |
| | |
| <syntaxhighlight lang="bash">
| |
| dotnet ef migrations add InitialCreate
| |
| </syntaxhighlight>
| |
| | |
| Dadurch wird eine neue Migration im '''Migrations'''-Ordner angelegt, die die aktuelle Datenbankschema-Änderung beschreibt.
| |
| | |
| Um die Datenbank auf den neuesten Stand der Migrationen zu bringen, führe folgenden Befehl im Terminal aus:
| |
| | |
| <syntaxhighlight lang="bash">
| |
| dotnet ef database update
| |
| </syntaxhighlight>
| |
| | |
| Damit wird die Datenbank entsprechend der aktuellen Migration aktualisiert.
| |
Moodle Installieren
Um Moodle 5 mit Git zu installieren, folge diesen Schritten:
- Voraussetzungen
- Git ist installiert (`git --version`)
- PHP, Webserver (Nginx), und Datenbank (Postgrsql) sind eingerichtet