【Rails】【MySQL】rails newでDBをmysqlで始める流れ
しばしブログ更新が開きました
最近Reactばかり触って更新するネタがなかったと言う...
Reactのバック側処理としてRailsを使うため、久しぶりにRalisを触ったら沼ったので書き留めておきます
rails newでDBをmysqlで始める流れ
導入している部分は適所飛ばしてください
MySQLを導入
HomebrewでMySQLを導入しますが、RailsをしていればHomebrewは導入してあると思うので、ここは省きます
MySQLの導入はこちらが参考になるかと思います
Mac へ MySQL を Homebrew でインストールする手順
MySQLでは、ユーザー名とパスワードでDB群にアクセスできるみたいです(調べてはいないので変なこと言ってたらすみません)
% mysql -u root -p
-uはユーザー名の指定、-pはパスワードの指定です
最初はおそらくユーザー名はrootになっているはずなので、ユーザー名はroot
パスワードを求められるので設定したものを入力しましょう
ターミナルに色々でてきて、表示が mysql> になっていればOKです
まずはデータベースがあるか確認します
mysql> show databases;
作ったばかりだとおそらく4つしかないかと思います
最初からあるDBは重要なものなので消さないようにしましょう
自分の場合はこんな感じです
DBを作成します
mysql> create database 名前;
名前には作ろうとするアプリの名前などを入れておくとわかりやすくていいかと思います
DBができたらRailsでアプリを作ります
Rails new でMySQLを設定
アプリケーションを作るディレクトリでrails newを行います
$ rails new 名前 -d mysql
-d はデータベースの指定です
mysqlとすることで、DBはそれを使う設定で作られます
必要な情報を記述していく
テキストエディタでconfig/database.ymlを開きます
defaultはmysql2を使うようになっているかと思います
defaultのusernameはroot(もし任意の名前にしてあるのであればそちら)にして、passwordは設定したパスワードを入力しておきます
今回開発環境(development)とtestでDBを使うので、この2つのdatabaseの名前を、mysqlで作ったDBの名前にします
自分はreactとrailsを組み合わせるテストをするために、react-railsと言う名前のDBを作ってあります
default: &default adapter: mysql2 encoding: utf8 pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %> username: root password: host: localhost development: <<: *default database: react-rails test: <<: *default database: react-rails
もしもGithubにpushするなら
開発段階で第三者に見られてもOKならこれでいいですが、本番環境では悪意のあるユーザーから不正にアクセスされるかもしれません
DBの情報(ユーザーネームやパスワード)は隠しファイルにしておいた方が良いです
(隠しファイルにしておいた方が良いものをそのままgitに上げると確認のメールが来るらしい)
環境変数についてはこちらがわかりやすいです
【Rails】dotenv-railsの導入方法と使い方を理解して環境変数を管理しよう!
今回はrailsのDBをMySQLで始める方法で沼ったので書き残しておきます
またボチボチ更新していきます