LMIV-SNACKAUTOMAT/MYSQL_SETUP.md

75 lines
1.8 KiB
Markdown

# MySQL Setup für LMIV Snackautomat
## Voraussetzungen
- MySQL Server installiert und läuft
- MySQL-Client (mysql-Kommandozeile oder phpMyAdmin)
## Datenbank und Benutzer erstellen
```sql
-- 1. Als MySQL Root-User anmelden
-- mysql -u root -p
-- 2. Datenbank erstellen
CREATE DATABASE lmiv_snackautomat CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
-- 3. Benutzer erstellen (für lokale Entwicklung)
CREATE USER 'lmiv_snackautomat'@'localhost' IDENTIFIED BY 'lmiv_snackautomat';
-- 4. Berechtigung gewähren
GRANT ALL PRIVILEGES ON lmiv_snackautomat.* TO 'lmiv_snackautomat'@'localhost';
-- 5. Für Netzwerkzugriff (falls benötigt)
CREATE USER 'lmiv_snackautomat'@'%' IDENTIFIED BY 'lmiv_snackautomat';
GRANT ALL PRIVILEGES ON lmiv_snackautomat.* TO 'lmiv_snackautomat'@'%';
-- 6. Berechtigung aktualisieren
FLUSH PRIVILEGES;
-- 7. Überprüfung
SHOW DATABASES;
SELECT User, Host FROM mysql.user WHERE User = 'lmiv_snackautomat';
```
## .env Konfiguration anpassen
Nach der Datenbank-Erstellung passen Sie die .env-Datei an:
```
DB_CONNECTION=mysql
DB_HOST=192.168.178.201 # MySQL-Server IP
DB_PORT=3306
DB_DATABASE=lmiv_snackautomat
DB_USERNAME=lmiv_snackautomat
DB_PASSWORD=lmiv_snackautomat
```
## Migration und Setup
```bash
# Datenbank-Verbindung testen
php artisan migrate:status
# Migrationen ausführen
php artisan migrate
# Admin-User erstellen
php artisan db:seed --class=AdminUserSeeder
# Beispieldaten laden
php artisan db:seed --class=ProductSeeder
```
## Für Produktionsumgebung
1. **Starke Passwörter verwenden**
2. **Firewalls konfigurieren**
3. **SSL/TLS aktivieren**
4. **Backup-Strategie implementieren**
```sql
-- Produktions-User mit stärkerem Passwort
CREATE USER 'lmiv_prod'@'localhost' IDENTIFIED BY 'IhrStarkesPasswort2024!';
GRANT ALL PRIVILEGES ON lmiv_snackautomat.* TO 'lmiv_prod'@'localhost';
FLUSH PRIVILEGES;
```