2016-10-19 5 views
2

Когда я бегу rake db:migrate я получаю следующее сообщение об ошибке:Rails - ошибка миграции - PG :: InvalidSchemaName: ОШИБКА:

ActiveRecord::StatementInvalid: PG::InvalidSchemaName: ERROR: no schema has been selected to create in 
: CREATE TABLE "schema_migrations" ("version" character varying NOT NULL) 

PG::InvalidSchemaName: ERROR: no schema has been selected to create in 

Tasks: TOP => db:migrate 
(See full trace by running 
ActiveRecord::StatementInvalid: PG::InvalidSchemaName: ERROR: no schema has been selected to create in 
: CREATE TABLE "schema_migrations" ("version" character varying NOT NULL) 

PG::InvalidSchemaName: ERROR: no schema has been selected to create in 

Tasks: TOP => db:migrate 
(See full trace by running task with --trace) task with --trace) 

Я понятия не имею, как это исправить, и будет приветствовать любые идеи.

Я бег рельсов 4.

Эта ошибка возникла потому, что я был первоначально с использованием базы данных MySQL (работал отлично), но затем переключилась на PGSQL для обеспечения легкой загрузки на Heroku. и теперь он не работает ни на местном хозяине, ни на героку.

+2

Это может помочь вам http://dba.stackexchange.com/questions/106057/error-no-schema-has-been-selected-to-create-in – user100693

+2

также проверить это решение http://stackoverflow.com/a/14286370/4318953 – user100693

+0

Я столкнулся с проблемой при обновлении gitlab в тестовой среде. Вышеуказанные ответы были в основном правильными. Это всегда хорошая политика в базах данных PG для устранения прав на «публичную» схему, чтобы никто не мог их использовать, что я и сделал. Но потом я не восстановил их должным образом, чтобы пользователь gitlab мог их использовать. Как только я передал право собственности на схему (через ссылку stackoverflow), она сработала. – Otheus

ответ

0

Эта ошибка возникает, когда схема, указанная в пути поиска, не существует. Возможно, вы настроили путь поиска схемы в конфигурации базы данных. Вы можете удалить путь поиска схемы из конфигурации. Если вы хотите сохранить путь поиска схемы, сначала создайте схему.