[Ruby on Rails 3, Ruby on Rails 4] Ubuntu に Passenger + MySQL で Rails 4 を動かす(2)
続きです。
[markdown]
> * [Ubuntu に Passenger + MySQL で Rails 4 を動かす(1) | deadwood](https://www.d-wood.com/blog/2013/09/27_4725.html)
## gem mysql2
サンプルアプリの設定を変更します。
“`
$ cd /home/vagrant/work/sample
$ vim Gemfile
“`
gem mysql2 を本番環境用に追加します。
“`
group :production do
gem ‘mysql2’
end
“`
“`
$ bundle install
“`
## MySQLにデータベースを作成する
ID/PWはインストール時に指定したもの。
“`
$ mysql -u root -p
“`
“`
mysql> create database sample_production;
mysql> grant all privileges on sample_production.* to ‘yourname’@’localhost’ identified by ‘yourpassword’;
mysql> exit;
“`
### database.yml
“`
$ vim config/database.yml
“`
“`
production:
adapter: mysql2
encoding: utf8
reconnect: false
database: sample_production
pool: 5
username: yourname
password: yourpassword
host: localhost
timeout: 5000
“`
### migration
“`
$ bundle exec rake db:setup RAILS_ENV=”production”
sample_production already exists
— create_table(“users”, {:force=>true})
-> 0.1663s
— initialize_schema_migrations_table()
-> 0.1534s
“`
これでRailsとMySQL間の通信が確立したはず。
## Passenger の設定を production mode に変更する
前回設定した箇所をコメントアウトします。
“`
$ sudo vim /etc/apache2/sites-available/passenger
“`
“`
# RailsEnv development
“`
Apache をリスタートします。
“`
$ sudo service apache2 restart
“`
## 動作確認
サンプルアプリのURLにアクセスしたところ、無事操作ができました。
http://dev.rails/users
が、トップページにアクセスすると以下のエラーが出ました。
http://dev.rails/
“`
The page you were looking for doesn’t exist.
“`
> * [Rails 3.0.3 Production 環境にて public ディレクトリが見れない時 – メモ@taruru](http://d.hatena.ne.jp/tarurut/20101203/1291336620)
>
> Rails 3 から Production にてRails サーバを起動するとpublic ディレクトリ以下はRails サーバより提供されなくなる。
とのことで正しい振るまいのよう。
環境を確認してみたいので、以下を編集してみましたが、変化はなかったので保留。
“`
$ vim config/environments/production.rb
“`
他の方法でMySQLが使われていることを確認します。
“`
$ mysql -u root -p
mysql> use sample_production;
Database changed
mysql> show tables;
+—————————–+
| Tables_in_sample_production |
+—————————–+
| schema_migrations |
| users |
+—————————–+
2 rows in set (0.00 sec)
“`
だいじょうぶそう。
> * [Mac OS X 10.7.5 (LION)でRuby on Railsの簡易アプリを作成してみる – 完熟トマト](http://kanjuku-tomato.blogspot.jp/2013/01/mac-os-x-1075-lionruby-on-railsweb.html)
[/markdown]