如果 rails 開發環境要用其他資料庫的話
在開發的時候,rails 預設使用 sqlite 資料庫作為開發環境。不過要公諸於世的網站,不會用 sqlite 資料庫運作。用什麼呢?這就必須要看雲端供應商(如果要用供應商的 IaaS 的話)、或是自己的偏好(如果要用供應商的 PaaS,或是自己架主機的話)。
無論如何,如果需要在開發環境改用其他資料庫、而不是使用 sqlite 資料庫的話,一點步驟的小指引:
- 首先請決定要用什麼資料庫:這裡用的 MariaDB 是 MySQL 的分支。
- 下載該資料庫,並設定需要的帳號密碼。每個資料庫的用法不同。MariaDB 的話,照著這篇 StartGuide 做。
- 設定完成後記下帳號密碼,然後翻翻看 rails 支援哪些資料庫:
-d, \[--database=DATABASE\] # Preconfigure for selected database (options: mysql/postgresql/sqlite3/oracle/frontbase/ibm\_db/sqlserver/jdbcmysql/jdbcsqlite3/jdbcpostgresql/jdbc)
- 主流的 mysql, postgresql, sqlserver 都有......我覺得應該夠用了啦。
- 輸入
rails -d mysql
。請記住 MariaDB 是 MySQL 的分支。 - 去檢查
config/database.yml
的說明,它在最前面應該有說明需要安裝的驅動程式。再去 Gemfile 檔案搜尋,應該是有安裝到的。 - 把前面記下來的帳號密碼寫在
config/database.yml
的 username 與 password 裡面。 - 檢查一下 database 以確認即將建立的資料庫。
- 輸入
rake db:create
!輸入rake db:create
!輸入rake db:create
! 因為很重要所以要說三次。沒有輸入,資料庫根本不存在。 - 撰寫一下自己的的 CRUD。懶得撰寫只要測試的話,參考一下 RailsBridge 的指引:
rails generate scaffold drink name:string temperature:integer
。 - 收工!