我希望有2个不同的配置和2个数据库连接,一个在我的localhost中,另一个在共享主机中。如何正确配置.ENV?
答案 0 :(得分:0)
在config/database.php
中,您需要创建辅助连接:
# Our secondary database connection
'mysql2' => array(
'driver' => 'mysql',
'host' => ENV('SHARED_HOSTING_HOST'),
'database' => ENV('SHARED_HOSTING_DB_NAME'),
'username' => ENV('SHARED_HOSTING_DB_USER'),
'password' => ENV('SHARED_HOSTING_PASSWORD'),
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
),
然后在您的.env
中,您可以自由定义SHARED_HOSTING_HOST
等等。
您可以通过多种方式使用此辅助连接:
在应用程序代码中:
class SomeController extends BaseController {
public function someMethod()
{
$someModel = new SomeModel;
$someModel->setConnection('mysql2');
$something = $someModel->find(1);
return $something;
}
}
每个型号:
<?php
class SomeModel extends Eloquent {
protected $connection = 'mysql2';
}
在数据库外观上:
$users = DB::connection('mysql2')->select(...);
在架构门面:
Schema::connection('mysql2')->create('some_table', function($table)
{
$table->increments('id'):
});