yii mysql 缓存_yii2优化 - 开启 Schema 缓存
開啟 Schema 緩存
Schema 緩存是一個特殊的緩存功能,每當你使用活動記錄時應(yīng)該要開啟這個緩存功能。如你所知, 活動記錄能智能檢測數(shù)據(jù)庫對象的集合(例如列名、列類型、約束)而不需要手動地描述它們。活動記錄是通過執(zhí)行額外的 SQL 查詢來獲得該信息。 通過啟用 Schema 緩存,檢索到的數(shù)據(jù)庫對象的集合將被保存在緩存中并在將來的請求中重用。
在開發(fā)環(huán)境下,數(shù)據(jù)庫表結(jié)構(gòu)可能會經(jīng)常變化,使用緩存可能會導(dǎo)致數(shù)據(jù)結(jié)構(gòu)不一致的問題,所以主要用于生成環(huán)境。要開啟 Schema 緩存,需要配置一個 cache 應(yīng)用組件來儲存 Schema 信息,并在配置中設(shè)置
yii\db\Connection::enableSchemaCache 為 true:
需要注意的是,如果修改數(shù)據(jù)結(jié)構(gòu),在更新完 SQL 語句之后需要先關(guān)閉 Schema 再開啟,數(shù)據(jù)結(jié)構(gòu)的修改才會生效。return [
// ...
'components' => [
// ...
'cache' => [
'class' => 'yii\caching\FileCache',
],
'db' => [
'class' => 'yii\db\Connection',
'dsn' => 'mysql:host=localhost;dbname=mydatabase',
'username' => 'root',
'password' => '',
'enableSchemaCache' => true,
// Duration of schema cache.
'schemaCacheDuration' => 3600,
// Name of the cache component used to store schema information
'schemaCache' => 'cache',
],
],
];
總結(jié)
以上是生活随笔為你收集整理的yii mysql 缓存_yii2优化 - 开启 Schema 缓存的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【Python】推荐6个好用到爆的Pyc
- 下一篇: 【数据竞赛】基于LSTM模型实现共享自行