ฉันกำลังประสบกับสถานการณ์ต่อไปนี้:
ฉันต้องการแยกฐานข้อมูลของฉันออกเป็นฐานข้อมูลการอ่านและเขียนแยกกัน ด้วยเหตุนี้ ฉันจึงตั้งค่า config/database.php
'mysql' => [
'driver' => 'mysql',
'write' => ['host' => env('DB_HOST_WRITE', 'localhost'),],
'read' => ['host' => env('DB_HOST_READ', 'localhost'),],
'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,
],
สำหรับ DB_HOST_WRITE
และ DB_HOST_READ
ฉันได้ตั้งค่าที่อยู่ IP สำหรับเซิร์ฟเวอร์ที่ฐานข้อมูลทำงานอยู่
สำหรับ DB_DATABASE
, DB_USERNAME
, DB_PASSWORD
ฉันได้ตั้งชื่อฐานข้อมูลและข้อมูลรับรองการเข้าสู่ระบบแล้ว
สามารถเข้าถึงเซิร์ฟเวอร์ทั้งสองได้ เมื่อฉันพยายามเข้าถึงโดยใช้คำสั่งคอนโซล mysql เช่นนี้: mysql -u USERNAME -h IPADDRESS -p
นี่คือปัญหา: เมื่อฉันพยายามเรียกใช้การโยกย้ายจากเซิร์ฟเวอร์ที่สามเช่นนี้
php artisan migrate
แต่มีเพียงฐานข้อมูลการเขียนเท่านั้นที่ได้รับการตั้งค่า
นี่เป็นพฤติกรรมที่คาดหวังหรือไม่
ฉันต้องย้ายแต่ละฐานข้อมูลด้วยตนเองหรือไม่
มีแฟล็กสำหรับคำสั่งการย้ายข้อมูลที่ช่วยให้ฉันระบุการเชื่อมต่อที่ต้องการย้ายได้หรือไม่
ฉันไม่พบสิ่งใดเกี่ยวกับการโยกย้ายฐานข้อมูลการอ่านเขียนเมื่อฉันค้นหาใน Google
ไม่มีการตั้งค่าฐานข้อมูลเพิ่มเติม แหล่งข้อมูลของฉันคือคำแนะนำต่อไปนี้: https://laravel.com/docs/5.7/database#read-and-write-connections
ยินดีอย่างยิ่งที่จะลิงก์ไปยังคำแนะนำที่เป็นประโยชน์หรือคำแนะนำในการแก้ปัญหา
ขอบคุณสำหรับความสนใจ.