yii2优化 - 开启 Schema 缓存
开启 Schema 缓存
Schema 缓存是一个特殊的缓存功能,每当你使用活动记录时应该要开启这个缓存功能。如你所知, 活动记录能智能检测数据库对象的集合(例如列名、列类型、约束)而不需要手动地描述它们。活动记录是通过执行额外的SQL查询来获得该信息。 通过启用 Schema 缓存,检索到的数据库对象的集合将被保存在缓存中并在将来的请求中重用。
PHP Code复制内容到剪贴板
- 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',
- ],
- ],
- ];
需要注意的是,如果修改数据结构,在更新完SQL语句之后需要先关闭Schema再开启,数据结构的修改才会生效。
清一下 cache 也行
command 里提供了现成的命令
php yii cache/flush-schema