75 lines
1.8 KiB
Markdown
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;
|
|
``` |