Ruby on Rails - Penyiapan Database
Sebelum memulai dengan bab ini, pastikan server database Anda sudah aktif dan berjalan. Ruby on Rails merekomendasikan untuk membuat tiga database - masing-masing database untuk pengembangan, pengujian, dan lingkungan produksi. Menurut konvensi, nama mereka harus -
- library_development
- library_production
- library_test
Anda harus menginisialisasi ketiganya dan membuat pengguna dan kata sandi untuk mereka dengan hak akses penuh membaca dan menulis. Kami menggunakanroot ID pengguna untuk aplikasi kita.
Pengaturan Database untuk MySQL
Di MySQL, kami menggunakan rootID pengguna untuk aplikasi kita. Sesi konsol MySQL tempat Anda melakukan ini terlihat seperti -
mysql> create database library_development;
Query OK, 1 row affected (0.01 sec)
mysql> grant all privileges on library_development.*
to 'root'@'localhost' identified by 'password';
Query OK, 0 rows affected (0.00 sec)
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)
Anda dapat melakukan hal yang sama untuk dua database lagi library_production dan library_test.
Konfigurasi database.yml
Pada titik ini, Anda perlu memberi tahu Rails tentang nama pengguna dan kata sandi untuk database. Anda melakukan ini di filedatabase.yml, tersedia di library\configsubdirektori dari Aplikasi Rails yang Anda buat. File ini memiliki bagian konfigurasi langsung untuk database MySQL. Di setiap bagian yang Anda gunakan, Anda perlu mengubah baris nama pengguna dan kata sandi untuk mencerminkan izin pada database yang Anda buat.
Saat Anda selesai, akan terlihat seperti -
development:
adapter: mysql
database: library_development
username: root
password: [password]
host: localhost
test:
adapter: mysql
database: library_test
username: root
password: [password]
host: localhost
production:
adapter: mysql
database: library_production
username: root
password: [password]
host: localhost
Pengaturan Database untuk PostgreSQL
Secara default, PostgreSQL tidak menyediakan pengguna. Kami harus membuat pengguna baru. Gunakan perintah berikut untuk membuat pengguna dengan nama tersebutrubyuser.
tp> sudo -u postgres createuser rubyuser -s
Jika Anda ingin membuat kata sandi untuk pengguna baru, gunakan perintah berikut.
tp> sudo -u postgres psql
postgres=# \password rubyuser
Gunakan perintah berikut untuk membuat database library_development.
postgres=# CREATE DATABASE library_development OWNER rubyuser;
CREATE DATABASE
Gunakan perintah berikut untuk membuat database library_production.
postgres=# CREATE DATABASE library_production OWNER rubyuser;
CREATE DATABASE
Gunakan perintah berikut untuk membuat database library_test.
postgres=# CREATE DATABASE library_test OWNER rubyuser;
CREATE DATABASE
tekan Ctrl+D untuk menghentikan PosgreSQL.
Konfigurasi database.yml
Pada titik ini, Anda perlu memberi tahu Rails nama pengguna dan kata sandi untuk database. Anda melakukan ini di filedatabase.yml, tersedia di library\configsubdirektori dari Aplikasi Rails yang Anda buat. File ini memiliki bagian konfigurasi langsung untuk database PostgreSQL. Di setiap bagian, Anda perlu mengubah baris nama pengguna dan kata sandi untuk mencerminkan izin pada database yang Anda buat.
Setelah Anda selesai, akan terlihat seperti berikut -
default: &default
adapter: postgresql
encoding: unicode
development:
adapter: postgresql
encoding: unicode
database: library_development
username: rubyuser
password: <Password for rubyuser>
test:
adapter: postgresql
encoding: unicode
database: library_test
username: rubyuser
password: <Password for rubyuser>
production:
adapter: postgresql
encoding: unicode
database: library_production
username: rubyuser
password: <Password for rubyuser>
Apa selanjutnya?
Dua bab berikutnya menjelaskan cara memodelkan tabel database Anda dan cara mengelolanya menggunakan Rails Migration.