Есть VPS:
Debian 8.3,
NGINX 1.8,
FPM,
PHP7,
PostgreSQL 9.4,
Yii2.
Есть сайт и копия на поддомене:
site.io,
dev.site.io
В БД есть 2 схемы:
public и
developer.
Основной сайт работает на схеме
public, всё супер.
Создал поддомен
dev и встала острая необходимость
удалить все данные из БД. Создал схему
developer
с аналогичной структурой, как на
public
В конфиге Yii прописал:
db => [
...
'schemaMap' => [
'pgsql'=> [
'class'=>'yii\db\pgsql\Schema',
'defaultSchema' => 'developer',
]
],
];
- Очистил таблицы на схеме developer
- Очистил кэш
- Отключил кэширование запросов
- Отключил кэширование схемы
Внимание, вопрос!Почему сайт на поддомене продолжает выводить данные из схемы public?!- На обоих сайтах для подключения используется один логин и пароль
- При выполнении запросов в консоли, с явным указанием схемы в запросе всё работает как надо
-
$table->fullName
в yii/db/pgsql/schema
выводит developer.tablename
, т.е. запросы должны идти явно к нужной схеме
В принципе, если в
/etc/postgresql/9.4/main/postgresql.conf
раскомментировать параметр
search_path и прописать в него нужные схемы,
то всё будет ок. Но я считаю, что это какая-то анальная боль!
Или я не прав, жизнь - боль и всё так и должно быть?
Помогите разобраться пожалуйста!