我正在尝试从另一台服务器连接数据库。 是否可以将Yii2数据库连接从一台服务器连接到另一台服务器db?
答案 0 :(得分:0)
在db config中,您必须在dsn
:
'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组件。