怎樣實(shí)現yii2數據庫讀寫(xiě)分離配置

時(shí)間:2022-06-27 22:13:39 數據庫操作系統 我要投稿
  • 相關(guān)推薦

怎樣實(shí)現yii2數據庫讀寫(xiě)分離配置

  開(kāi)始使用數據庫首先需要配置數據庫連接組件,通過(guò)添加 db 組件到應用配置實(shí)現("基礎的" Web 應用是 config/web.PHP),DSN( Data Source Name )是數據源名稱(chēng),用于指定數據庫信息.如下所示:

  return [

  // ...

  components => [

  // ...

  db => [

  class => yiidbConnection,

  dsn => mysql:host=localhost;dbname=mydatabase, // MySQL, MariaDB

  //dsn => sqlite:/path/to/database/file, // SQLite

  //dsn => pgsql:host=localhost;port=5432;dbname=mydatabase, // PostgreSQL

  //dsn => cubrid:dbname=demodb;host=localhost;port=33000, // CUBRID

  //dsn => sqlsrv:Server=localhost;Database=mydatabase, // MS SQL Server, sqlsrv driver

  //dsn => dblib:host=localhost;dbname=mydatabase, // MS SQL Server, dblib driver

  //dsn => mssql:host=localhost;dbname=mydatabase, // MS SQL Server, mssql driver

  //dsn => oci:dbname=//localhost:1521/mydatabase, // Oracle

  username => root, //數據庫用戶(hù)名

  password => , //數據庫密碼

  charset => utf8,

  ],

  ],

  // ...

  ];

  請參考PHP manual獲取更多有關(guān) DSN 格式信息。 配置連接組件后可以使用以下語(yǔ)法訪(fǎng)問(wèn):

  $connection = Yii::$app->db;

  請參考[[yiidbConnection]]獲取可配置的屬性列表。 如果你想通過(guò)ODBC連接數據庫,則需要配置[[yiidbConnection::driverName]] 屬性,例如:

  db => [

  class => yiidbConnection,

  driverName => mysql,

  dsn => odbc:Driver={MySQL};Server=localhost;Database=test,

  username => root,

  password => ,

  ],

  注意:如果需要同時(shí)使用多個(gè)數據庫可以定義 多個(gè) 連接組件:

  return [

  // ...

  components => [

  // ...

  db => [

  class => yiidbConnection,

  dsn => mysql:host=localhost;dbname=mydatabase,

  username => root,

  password => ,

  charset => utf8,

  ],

  secondDb => [

  class => yiidbConnection,

  dsn => sqlite:/path/to/database/file,

  ],

  ],

  // ...

  ];

  在代碼中通過(guò)以下方式使用:

  $primaryConnection = Yii::$app->db;

  $secondaryConnection = Yii::$app->secondDb;

  如果不想定義數據庫連接為全局應用組件,可以在代碼中直接初始化使用:

  $connection = new yiidbConnection([

  dsn => $dsn,

  username => $username,

  password => $pa

【怎樣實(shí)現yii2數據庫讀寫(xiě)分離配置】相關(guān)文章:

怎樣實(shí)現演講的預期效果07-02

數據庫課程網(wǎng)站的設計與實(shí)現開(kāi)題報告07-01

騰訊的國際足球數據庫是如何實(shí)現的?07-13

股市投資怎樣實(shí)現復利增長(cháng)?07-02

企業(yè)怎樣實(shí)現高效績(jì)效考核07-03

怎樣在web實(shí)現漂亮的動(dòng)態(tài)圖表?07-03

微相框的微信功能是怎樣實(shí)現的?07-09

怎樣實(shí)現課堂中的師生角色轉換07-03

QQ傳文件的秒傳功能怎樣實(shí)現?07-10

怎樣才能實(shí)現個(gè)人職業(yè)發(fā)展規劃?07-13

99久久精品免费看国产一区二区三区|baoyu135国产精品t|40分钟97精品国产最大网站|久久综合丝袜日本网|欧美videosdesexo肥婆