我无法丢弃我的Postgres数据库的Rails应用程序 - 从源码部署到Heroku的后最近切换。当我运行rake任务汇总数据并填充数据库,耙分贝:创建分贝:迁移所有的作品,但DB:降不工作。运行rake数据库后,我在终端中出现以下错误:drop db:migrate db:create all。 'all'是一个聚合器的耙子任务。的Postgres DROP DATABASE与rake命令
Couldn't drop something_development : #<PG::Error: FATAL: database "postgres" does not exist
>
Couldn't drop something_test : #<PG::Error: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/var/pgsql_socket/.s.PGSQL.5432"?
>
something_development already exists
could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/var/pgsql_socket/.s.PGSQL.5432"?
“这是看我的database.yml文件...`
development:
adapter: postgresql
host: localhost
database: something_development
username: username
test:
adapter: postgresql
database: something_test
pool: 5
timeout: 5000
production:
adapter: postgresql
host: localhost
username: username
database: something_production
而且,这里是在psql命令行的数据库列表:
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
----------------------+-----------------+----------+---------+-------+-------------------------------------
username | username | UTF8 | en_US | en_US |
something_development | username | UTF8 | en_US | en_US |
template0 | username | UTF8 | en_US | en_US | =c/username+ | | | | | username=CTc/username
template1 | username | UTF8 | en_US | en_US | =c/username + | | | | | username=CTc/username
(4 rows)
编辑 - 我正在努力在推动heroku发展之前做到这一点。我是否需要为我的用户名添加访问权限?我尝试了GRANT UPDATE ON something_development TO username,但收到ERROR:关系“something_development”不存在。请记住对于Heroku - 谢谢。
有没有人有什么可能发生的或任何想法,可能指向我的方向是正确的一些资源?感谢任何帮助 - 谢谢。
我试图推到之前的Heroku为此在发展。我是否需要为我的用户名添加访问权限?我试图GRANT UPDATE ON something_development TO用户名,但收到的错误:关系“something_development”不存在。请记住对于Heroku - 谢谢。 – pvskisteak5
在postgresql中创建数据库我只是做 \t CREATE USER my_user; \t CREATE DATABASE my_db OWNER my_user; \t ALTER USER my_user WITH ENCRYPTED PASSWORD'password'; \t ALTER ROLE my_user WITH CREATEDB; –
在完成这个操作并在psql中列出数据库之后,我的用户名仍然没有出现在针对something_development的访问权限下。当运行你建议的CREATE命令时,它表示它们已经存在。我还为my_user授予了对something_development的访问权限,这会在psql中列出所有数据库时显示。 – pvskisteak5