ドットインストール Heroku入門「#05 Railsアプリケーションを作ろう」(http://dotinstall.com/lessons/basic_heroku/28805)をしていて起きた問題です。
このレッスンは
vagrant上のcentos6.7でrailsを動かすもので、
データベースはpostgreSQLを利用しています。
「rails s」してブラウザで確認したら以下のようなエラーメッセージが出ました。
なぜmymemo_developmentデータベースが作成されないのかわかりません。
また、「http://localhost:3000」を表示するだけなのにも関わらずデータベースが存在しないのが問題になるのかがわかりません。
どこが原因でしょうか?
以下に「エラーメッセージ」「mymemo/Gemfile」「mymemo/config/database.yml」の内容を載せます。
【エラーメッセージ】
PG::ConnectionBad
FATAL: データベース"mymemo_development"は存在しません
Rails.root: /home/vagrant/mymemo
Application Trace | Framework Trace | Full Trace
Request
Parameters:
None
Toggle session dump
Toggle env dump
Response
Headers:
None
【mymemo/Gemfile】
vi
1source 'https://rubygems.org' 2 3 4# Bundle edge Rails instead: gem 'rails', github: 'rails/rails' 5gem 'rails', '4.1.4' 6# Use postgresql as the database for Active Record 7gem 'pg' 8# Use SCSS for stylesheets 9gem 'sass-rails', '~> 4.0.3' 10# Use Uglifier as compressor for JavaScript assets 11gem 'uglifier', '>= 1.3.0' 12# Use CoffeeScript for .js.coffee assets and views 13gem 'coffee-rails', '~> 4.0.0' 14# See https://github.com/sstephenson/execjs#readme for more supported runtimes 15gem 'therubyracer', platforms: :ruby 16 17# Use jquery as the JavaScript library 18gem 'jquery-rails' 19# Turbolinks makes following links in your web application faster. Read more: https://github.com/rails/turbolinks 20gem 'turbolinks' 21# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder 22gem 'jbuilder', '~> 2.0' 23# bundle exec rake doc:rails generates the API under doc/api. 24gem 'sdoc', '~> 0.4.0', group: :doc 25 26# Spring speeds up development by keeping your application running in the background. Read more: https://github.com/rails/spring 27gem 'spring', group: :development 28 29# Use ActiveModel has_secure_password 30# gem 'bcrypt', '~> 3.1.7' 31 32# Use unicorn as the app server 33# gem 'unicorn' 34 35# Use Capistrano for deployment 36# gem 'capistrano-rails', group: :development 37 38# Use debugger 39# gem 'debugger', group: [:development, :test] 40
【mymemo/config/database.yml】
vi
1# PostgreSQL. Versions 8.2 and up are supported. 2# 3# Install the pg driver: 4# gem install pg 5# On OS X with Homebrew: 6# gem install pg -- --with-pg-config=/usr/local/bin/pg_config 7# On OS X with MacPorts: 8# gem install pg -- --with-pg-config=/opt/local/lib/postgresql84/bin/pg_config 9# On Windows: 10# gem install pg 11# Choose the win32 build. 12# Install PostgreSQL and put its /bin directory on your path. 13# 14# Configure Using Gemfile 15# gem 'pg' 16# 17default: &default 18 adapter: postgresql 19 encoding: unicode 20 # For details on connection pooling, see rails configuration guide 21 # http://guides.rubyonrails.org/configuring.html#database-pooling 22 pool: 5 23 24development: 25 <<: *default 26 database: mymemo_development 27 28 # The specified database role being used to connect to postgres. 29 # To create additional roles in postgres see `$ createuser --help`. 30 # When left blank, postgres will use the default role. This is 31 # the same name as the operating system user that initialized the database. 32 #username: mymemo 33 34 # The password associated with the postgres role (username). 35 #password: 36 37 # Connect on a TCP socket. Omitted by default since the client uses a 38 # domain socket that doesn't need configuration. Windows does not have 39 # domain sockets, so uncomment these lines. 40 #host: localhost 41 42 # The TCP port the server listens on. Defaults to 5432. 43 # If your server runs on a different port number, change accordingly. 44 #port: 5432 45 46 # Schema search path. The server defaults to $user,public 47 #schema_search_path: myapp,sharedapp,public 48 49 # Minimum log levels, in increasing order: 50 # debug5, debug4, debug3, debug2, debug1, 51 # log, notice, warning, error, fatal, and panic 52 # Defaults to warning. 53 #min_messages: notice 54 55# Warning: The database defined as "test" will be erased and 56# re-generated from your development database when you run "rake". 57# Do not set this db to the same as development or production. 58test: 59 <<: *default 60 database: mymemo_test 61 62# As with config/secrets.yml, you never want to store sensitive information, 63# like your database password, in your source code. If your source code is 64# ever seen by anyone, they now have access to your database. 65# 66# Instead, provide the password as a unix environment variable when you boot 67# the app. Read http://guides.rubyonrails.org/configuring.html#configuring-a-database 68# for a full rundown on how to provide these environment variables in a 69# production deployment. 70# 71# On Heroku and other platform providers, you may have a full connection URL 72# available as an environment variable. For example: 73# 74# DATABASE_URL="postgres://myuser:mypass@localhost/somedatabase" 75# 76# You can use this database configuration with: 77# 78# production: 79# url: <%= ENV['DATABASE_URL'] %> 80# 81production: 82 <<: *default 83 database: mymemo_production 84 username: mymemo 85 password: <%= ENV['MYMEMO_DATABASE_PASSWORD'] %> 86
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/02/17 19:06
2016/02/18 02:00