Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Laravel:Indeks tidak terdefinisi:driver

Kesalahannya adalah karena Anda kehilangan driver dalam konfigurasi Anda.

Cara yang lebih baik untuk mengubah koneksi adalah dengan mendaftarkan koneksi baru Anda di file konfigurasi database dan mengubah koneksi saat runtime.

'connections' => [

    'mysql' => [
        'driver' => 'mysql',
        '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' => '',
        'strict' => true,
        'engine' => null,
    ],

    'newConnection' => [
        'driver' => 'mysql',
        'host' => env('DB_HOST', '127.0.0.1'),
        'port' => env('DB_PORT', '3306'),
        'database' => 'db2',
        'username' => env('DB_USERNAME', 'forge'),
        'password' => env('DB_PASSWORD', ''),
        'unix_socket' => env('DB_SOCKET', ''),
        'charset' => 'utf8mb4',
        'collation' => 'utf8mb4_unicode_ci',
        'prefix' => '',
        'strict' => true,
        'engine' => null,
    ],
]

Sekarang Anda dapat mengubah koneksi Anda menggunakan nama yang Anda gunakan untuk mendefinisikan koneksi baru Anda.

Ubah koneksi default

Config::set('database.default', 'newConnection');
DB::reconnect('newConnection');

atau ubah koneksi untuk pembuat kueri

DB::connection('newConnection')->table('articles')->insert($articles);

atau jika Anda menggunakan model Eloquent, Anda dapat mengatur koneksi default yang terkait dengan model menggunakan connection properti

protected $connection = 'newConnection';

atau ubah saat runtime dengan memanggil setConnection

(new User)->setConnection('newConnection');

Jika Anda ingin mengubah detail koneksi saat ini, Anda dapat mengubahnya sesuai keinginan

Config::set('database.connections.mysql.database', 'db2');

dan setelah perubahan Anda perlu menelepon

DB::reconnect('mysql');

atau

DB::purge('mysql');


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana situs perjalanan mengunci kamar?

  2. Kesalahan:Sumber data menolak pembuatan koneksi, pesan dari server:Terlalu banyak koneksi

  3. slash sebelum setiap masalah kutipan

  4. JSON_STORAGE_FREE() – Cari Tahu Berapa Banyak Ruang Penyimpanan yang Dikosongkan Setelah Pembaruan Dokumen JSON di MySQL

  5. mysqldump di server jauh