# 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; ```