Waren

So konfigurieren Sie Laravel für die Verwendung mehrerer Datenbanken in Ihrem Projekt

Normalerweise beinhaltet ein Softwareentwicklungsprojekt die Verwendung einer Datenbank zur strukturierten Speicherung von Daten.

Für bestimmte Projekte kann es notwendig sein, mehrere Datenbanken zu verwenden.

Um bei Laravel mehrere Datenbanken nutzen zu können, müssen wir das Framework und insbesondere die Verbindungskonfigurationsdatei konfigurieren.

Sehen wir uns an, wie man Laravel für die Verwendung mehrerer Datenbanken konfiguriert.

Geschätzte Lesezeit: 4 minuti

Reichen Sie das database.php in config Verzeichnis

Diese Datei befindet sich im Verzeichnis config Ihrer Laravel-Anwendung.

In der Datei database.php es ist möglich, defiSchließen Sie mehrere Datenbankverbindungen ab. Jede Verbindung muss sein defials Array nitiert. Das Array sollte die folgenden Informationen enthalten:

  • driver: der zu verwendende Datenbanktreiber;
  • host: der Name host oder die Adresse IP des Datenbankservers;
  • port: die Portnummer des Datenbankservers;
  • database: der Datenbankname;
  • username: der Benutzername für die Verbindung zur Datenbank;
  • password: das Passwort für die Verbindung zur Datenbank;

Zum Beispiel der folgende Code defiEs gibt zwei Datenbankverbindungen, eine für MySQL und eine für PostgreSQL:

'connections' => [
        'sqlite' => [
            'driver' => 'sqlite',
            'url' => env('DATABASE_URL'),
            'database' => env('DB_DATABASE', database_path('database.sqlite')),
            'prefix' => '',
            'foreign_key_constraints' => env('DB_FOREIGN_KEYS', true),
        ],

        'mysql' => [
            'driver' => 'mysql',
            'url' => env('DATABASE_URL'),
            'host' => env('DB_HOST', '127.0.0.1'),
            'port' => env('DB_PORT', '3306'),
            'database' => env('DB_DATABASE', 'forge'),
            'username' => env('DB_USERNAME', 'forge'),
            'password' => env('DB_PASSWORD', ''),
            'unix_socket' => env('DB_SOCKET', ''),
            'charset' => 'utf8mb4',
            'collation' => 'utf8mb4_unicode_ci',
            'prefix' => '',
            'prefix_indexes' => true,
            'strict' => true,
            'engine' => null,
            'options' => extension_loaded('pdo_mysql') ? array_filter([
    PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'),
            ]) : [],
        ],

        'pgsql' => [
            'driver' => 'pgsql',
            'url' => env('DATABASE_URL'),
            'host' => env('DB_HOST', '127.0.0.1'),
            'port' => env('DB_PORT', '5432'),
            'database' => env('DB_DATABASE', 'forge'),
            'username' => env('DB_USERNAME', 'forge'),
            'password' => env('DB_PASSWORD', ''),
            'charset' => 'utf8',
            'prefix' => '',
            'prefix_indexes' => true,
            'schema' => 'public',
            'sslmode' => 'prefer',
        ],

So stellen Sie eine Verbindung zur Datenbank her

Nach defiSobald Sie über Datenbankverbindungen verfügen, können Sie diese in Ihrem Code verwenden Laravel. Dazu können Sie die verwenden facade der Datenbank. Dort facade Die Datenbank bietet eine einheitliche Schnittstelle für die Interaktion mit Datenbanken.

Um zwischen Datenbankverbindungen zu wechseln, können Sie die Methode verwenden Connection() des facade Datenbanken. Die Methode Connection() nimmt den Namen der Datenbankverbindung als Argument.

Der folgende Code geht beispielsweise von der MySQL-Datenbank zur Pgsql-Datenbank:

Innovations-Newsletter
Verpassen Sie nicht die wichtigsten Neuigkeiten zum Thema Innovation. Melden Sie sich an, um sie per E-Mail zu erhalten.
use Illuminate\Support\Facades\DB;

DB::connection('pgsql');

Sobald Sie zu einer Datenbankverbindung wechseln, können Sie diese zum Abfragen und Interagieren mit der Datenbank verwenden.

Vorteile der Verwendung mehrerer Datenbanken in Laravel

Die Verwendung mehrerer Datenbanken in Laravel bietet zahlreiche Vorteile, darunter:

  • Bessere Leistung: Die Verwendung mehrerer Datenbanken kann die Anwendungsleistung verbessern, indem Daten verschiedener Typen getrennt werden. Beispielsweise könnten Sie Benutzerdaten in einer Datenbank und Produktdaten in einer anderen Datenbank speichern.
  • Erhöhte Sicherheit: Die Verwendung mehrerer Datenbanken kann die Anwendungssicherheit verbessern, indem Daten verschiedener Typen getrennt werden. Beispielsweise können Sie vertrauliche Daten in einer Datenbank und weniger vertrauliche Daten in einer anderen Datenbank speichern.
  • Höhere Skalierbarkeit: Durch die Verwendung mehrerer Datenbanken können Sie Ihre Anwendung skalierbarer machen, indem Sie Ihre Daten auf mehrere Server verteilen können.

Best Practices für die Verwendung mehrerer Datenbanken in Laravel

Hier sind einige Best Practices für die Verwendung mehrerer Datenbanken in Laravel:

  • Verwenden Sie benutzerfreundliche Namen für Datenbankverbindungen: Dies erleichtert die Identifizierung und Verwaltung von Datenbankverbindungen.
  • Verwenden Sie die Methode Connection() von einem ausgehen DB zu einem anderen - so vermeiden Sie versehentliches Laufen query auf Datenbank falsch.
  • Verwenden Sie ein Datenbankmigrationssystem, um Ihre Datenbankschemata zu verwalten. Dies wird Ihnen helfen, Ihre Datenbankschemata in allen Ihren Datenbanken synchron zu halten Datenbank.

Abschluss

Die Verwendung mehrerer Datenbanken in Laravel kann eine großartige Möglichkeit sein, die Leistung, Sicherheit und Skalierbarkeit Ihrer Anwendung zu verbessern. Wenn Sie die in diesem Artikel beschriebenen Best Practices befolgen, können Sie mehrere Datenbanken in Laravel effektiv nutzen.

Verwandte Lesungen

Ercole Palmeri

Innovations-Newsletter
Verpassen Sie nicht die wichtigsten Neuigkeiten zum Thema Innovation. Melden Sie sich an, um sie per E-Mail zu erhalten.

Aktuelle Artikel

Veeam bietet den umfassendsten Support für Ransomware, vom Schutz bis zur Reaktion und Wiederherstellung

Coveware by Veeam wird weiterhin Dienstleistungen zur Reaktion auf Cyber-Erpressungsvorfälle anbieten. Coveware wird Forensik- und Sanierungsfunktionen anbieten …

23. April 2024

Grüne und digitale Revolution: Wie vorausschauende Wartung die Öl- und Gasindustrie verändert

Die vorausschauende Wartung revolutioniert den Öl- und Gassektor mit einem innovativen und proaktiven Ansatz für das Anlagenmanagement.…

22. April 2024

Die britische Kartellbehörde schlägt bei BigTech Alarm wegen GenAI

Die britische CMA hat eine Warnung zum Verhalten von Big Tech auf dem Markt für künstliche Intelligenz herausgegeben. Dort…

18. April 2024

Casa Green: Energierevolution für eine nachhaltige Zukunft in Italien

Das „Green Houses“-Dekret, das von der Europäischen Union zur Verbesserung der Energieeffizienz von Gebäuden erlassen wurde, hat seinen Gesetzgebungsprozess mit… abgeschlossen.

18. April 2024