Laravel’de iki farklı veritabanına bağlanmak için, config/database.php dosyasını ve Eloquent ORM’i kullanabilirsiniz. İşte bu işlemi adım adım nasıl yapabileceğiniz:
İlk adım olarak, config/database.php dosyasını açın. Bu dosya, Laravel uygulamanızın veritabanı yapılandırma ayarlarını içerir. Bu dosyada birden fazla veritabanı bağlantısı tanımlayabilirsiniz.
connections dizisi içinde, yeni bir veritabanı bağlantısı tanımlayın. Örneğin, ikinci bir MySQL veritabanına bağlanmak için aşağıdaki gibi bir yapılandırma ekleyebilirsiniz:

'connections' => [
    // İlk veritabanı bağlantısı
    'mysql' => [
        'driver' => 'mysql',
        'host' => env('DB_HOST', '127.0.0.1'),
        'port' => env('DB_PORT', '3306'),
        // Diğer bağlantı ayrıntıları burada...
    ],

    // İkinci veritabanı bağlantısı
    'mysql2' => [
        'driver' => 'mysql',
        'host' => env('DB_HOST_2', '127.0.0.1'),
        'port' => env('DB_PORT_2', '3306'),
        // Diğer bağlantı ayrıntıları burada...
    ],

],

Yukarıdaki örnekte, ‘mysql2’ olarak adlandırılmış ikinci bir MySQL bağlantısı tanımladık. Bağlantı ayrıntılarını kendi gereksinimlerinize göre ayarlayabilirsiniz.

Şimdi, yeni bağlantınız için .env dosyanızda çevresel değişkenleri (environment variables) ayarlayın. Örneğin:

DB_HOST_2=second_db_host
DB_PORT_2=second_db_port
DB_DATABASE_2=second_db_name
DB_USERNAME_2=second_db_user
DB_PASSWORD_2=second_db_password

Laravel’de kullanmak istediğiniz veritabanı bağlantısını belirlediğinizde, bu bağlantıyı kullanarak Eloquent modelleri ile çalışabilirsiniz. Modelin bağlanacağı veritabanını belirlemek için ‘on’ özelliğini kullanabilirsiniz:

class MyModel extends Model {
    protected $connection = 'mysql2'; // İkinci veritabanı bağlantısını kullan
}

Yukarıdaki örnekte, MyModel isimli Eloquent modeli ikinci veritabanı bağlantısını (‘mysql2’) kullanacak şekilde ayarlanmıştır. Bu model ile veritabanı sorguları ikinci veritabanına yönlendirilecektir.

Bu adımları takip ederek, Laravel’de iki farklı veritabanına bağlanabilir ve her birini kullanabilirsiniz.

By admin

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir