Doctrine2 / DBAL + Postgresql — общедоступный. схема отсутствует в запросах Doctrine | Пустой результат запроса

на моих серверах VPS запрос Doctrine, отвечающий за подсчет выполненных миграций, не возвращает строк. Проблема странная, иногда с помощью PHPStorm я тоже не получаю результатов, но это происходит только тогда, когда я пропускаю общественности. схемы. Я не могу установить имя в таблице конфигурации Doctrine с помощью public. префикс из-за дальнейших проблем DBAL. Локали Я получил ту же версию PgSQL 9.6 и PHP 5.6, единственное отличие @VPS — это PHP 7.1.

#------------------------------------------------------------------------------
# CLIENT CONNECTION DEFAULTS
#------------------------------------------------------------------------------

# - Statement Behavior -

#search_path = '"$user", public'    # schema names
#default_tablespace = ''        # a tablespace name, '' uses the default
#temp_tablespaces = ''          # a list of tablespace names, '' uses

Изменение search_path помогает частично, иногда это приводит к появлению строк в качестве результата запроса, однако миграция Doctrine все еще имеет проблемы с этим.

Запросы:

SELECT * FROM doctrine_migration_versions;  --  sometimes no results, even if ros actually exists
SELECT * FROM public.doctrine_migration_versions;   --  works always

Заранее спасибо за любые ответы.

0

Решение

Я нашел проблему. Проблема заключалась в том, что пользователь базы данных был таким же, как существующая схема. Вот почему Postgres по умолчанию искал схему с именем пользователя и нашел ее. Изменение postgres conf, чтобы не искать пользователя, но публично. только схема, решенная «проблема»

#search_path = '"$user", public'    # schema names

в

search_path = 'public'    # schema names
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]