【RubyOnRails + MySQL】AWS Cloud9 環境構築 MySQLの文字化け解消まで


AWS Cloud9で RubyOnRails + MySQL の環境構築を行う
(大変初歩的なことで申し訳ないが)

Create environment後、

Rubyの設定

Rubyの好きなバージョンをインストールせよ

$ rvm install バージョン

実行後、

$ ruby -v

をすることで現在インストールされているバージョンを確認できるよ。
Cloud9には元々Rubyはインストールされてるけど、自分の好きなバージョンを入れてね

インストールしたRubyを使用できるようにせよ

上記のインストールだけでは、ただAWSにインストールしただけだよ

$ rvm --default use バージョン

にて、使用するバージョンを決めておいて

Rails の設定

好きなバージョンのRailsをインストールせよ

$ gem install rails -v バージョン

Rubyのときと同じく、念のためインストールしたRailsのバージョンを確認しといて

$ rails -v

MySQLの設定

MySQLはAWSに元からインストールされてる基本的に既存のバージョンで大丈夫だと思うよ

MySQLの文字化けを回避せよ

MySQLのデフォルトの文字コードだと、日本語を登録した際に文字化けの恐れがある。変更すべし。

試しにMySQLにログインしチェックしてみよう

$ sudo mysql -u root -p
mysql> show variables like 'character%';
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8                       |
| character_set_connection | utf8                       |
| character_set_database   | latin1                     |
| character_set_filesystem | binary                     |
| character_set_results    | utf8                       |
| character_set_server     | latin1                     |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+

上記の latin1 という文字コードを UTF-8 にしなければ。

vimで設定を書き換える

$ vi /etc/mysql/mysql.cnf

下部に

[mysqld]
character-set-server=utf8
[client]
default-character-set=utf8

これを書き加え、保存してね。

再び

mysql> show variables like 'character%';

を実行してみると...


+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8                       |
| character_set_connection | utf8                       |
| character_set_database   | utf8                       |
| character_set_filesystem | binary                     |
| character_set_results    | utf8                       |
| character_set_server     | utf8                       |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+

こうなっていればひとまず解決です。