簡體   English   中英

Laravel多個數據庫連接不起作用

[英]Laravel Multiple Database Connections not working

我在Laravel開發中使用了多個數據庫連接,但是沒有獲得正確的信息;

/config/database.php

'connections' => [
    'database' => [
        'driver'    => 'mysql',
        'host'      => env('DB_HOST', 'localhost'),
        'port'      => env('DB_PORT', '3306'),
        'database'  => env('DB_DATABASE', 'forge'),
        'username'  => env('DB_USERNAME', 'forge'),
        'password'  => env('DB_PASSWORD', ''),
        'charset'   => 'utf8',
        'collation' => 'utf8_unicode_ci',
        'prefix'    => '',
        'strict'    => true,
        'engine'    => null,
    ],

    'database2' => [
        'driver'    => 'mysql',
        'host'      => env('DB2_HOST', 'localhost'),
        'port'      => env('DB2_PORT', '3306'),
        'database'  => env('DB2_DATABASE', 'forge'),
        'username'  => env('DB2_USERNAME', 'forge'),
        'password'  => env('DB2_PASSWORD', ''),
        'charset'   => 'utf8',
        'collation' => 'utf8_unicode_ci',
        'prefix'    => '',
        'strict'    => true,
        'engine'    => null,
    ]
],

在我的控制器中

$result = DB::connection('database2')->table('mytable')->select('*')->get();

我正在得到錯誤響應;

SQLSTATE [HY000] [1045]對用戶'user'@'000.000.000.000'的訪問被拒絕(使用密碼:是)

但是,即使我嘗試連接到“ database2”,它顯示的IP地址也用於“ database”

參見以下配置,您必須為新數據庫配置所有內容:

'database2' => [ 
  'driver' => 'mysql',
  'host' => env('DB_HOST2', 'HOST_IP'),
  'port' => env('DB_PORT2', 'HOST_PORT'), 
  'database' => env('DB_DATABASE2', 'DATABASE_NAME'), 
  'username' => env('DB_USERNAME2', 'USER_NAME'), 
  'password' => env('DB_PASSWORD2', 'PASSWORD'), 
  'unix_socket' => env('DB_SOCKET2', ''), 
  'charset' => 'utf8mb4', 
  'collation' => 'utf8mb4_unicode_ci', 
  'prefix' => '', 
  'strict' => false, 
  'engine' => null,
],

您需要更改HOST_IP,HOST_PORT,DATABASE_NAME,USER_NAME,PASSWORD的位置

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM