Yii2 Db连接到另一台服务器

时间:2017-09-21 09:22:31

标签: yii yii2 yii2-advanced-app

我正在尝试从另一台服务器连接数据库。 是否可以将Yii2数据库连接从一台服务器连接到另一台服务器db?

3 个答案:

答案 0 :(得分:0)

在db config中,您必须在dsn

中指定数据库的IP地址
'dsn' => 'mysql:host=YOUR_IP_HERE;dbname=YOUR_DB_HERE',

就是这样。

第二台服务器可能不允许3306端口上的连接,因此您必须在iptables(Linux服务器)中允许它。

答案 1 :(得分:0)

很有可能,甚至可以将yii2应用程序与许多不同的数据库服务器连接起来。您只需在配置文件中添加一个位,如下所示:

    'components' => [

    'db_server1' => [
        'class' => 'yii\db\Connection',
        'dsn' => 'pgsql:host=localhost;dbname=DB_NAME;port=PORT_CONNECTION',
        'username' => 'DB_USERNAME',
        'password' => 'DB_PASSWORD',
        'charset' => 'utf8',
    ],

    'db_server2' => [
        'class' => 'yii\db\Connection',
        'dsn' => 'pgsql:host=OTHER_HOST;dbname=DB_NAME;port=PORT_CONNECTION',
        'username' => 'DB_USERNAME',
        'password' => 'DB_PASSWORD',
        'charset' => 'utf8',
    ],];

希望可以帮到你

答案 2 :(得分:0)

您必须在config文件夹中的web.php中配置另一个数据库连接:

    'db2'=>[
        'class'=>'yii\db\Connection',
        'dsn' => 'mysql:host=localhost;dbname=dbname',
        'username' => 'root',
        'password' => '',
        'charset' => 'utf8'            
    ],

然后调用db2组件。