Thứ tư, 18/03/2015 | 00:00 GMT+7

Cách sử dụng PostgreSQL với ứng dụng Ruby on Rails của bạn trên Ubuntu 14.04

Ruby on Rails sử dụng sqlite3 làm database mặc định của nó, nó hoạt động tốt trong nhiều trường hợp, nhưng có thể không đủ cho ứng dụng của bạn. Nếu ứng dụng của bạn yêu cầu khả năng mở rộng, tập trung và kiểm soát (hoặc bất kỳ tính năng nào khác) được cung cấp bởi database SQL client / server , chẳng hạn như PostgreSQL hoặc MySQL , bạn cần thực hiện một số bước bổ sung để cài đặt và chạy nó.

Hướng dẫn này sẽ chỉ cho bạn cách cài đặt môi trường Ruby on Rails phát triển cho phép các ứng dụng của bạn sử dụng database PostgreSQL, trên server Ubuntu 14.04. Đầu tiên, ta sẽ giới thiệu cách cài đặt và cấu hình PostgreSQL. Sau đó, ta sẽ chỉ cho bạn cách tạo một ứng dụng rails sử dụng PostgreSQL làm server database của nó.

Yêu cầu

Hướng dẫn này yêu cầu phải có một môi trường phát triển Ruby on Rails đang hoạt động. Nếu bạn chưa có, bạn có thể làm theo hướng dẫn trong liên kết này: Cách cài đặt Ruby on Rails với rbenv trên Ubuntu 14.04 .

Bạn cũng cần phải có quyền truy cập vào account superuser, hoặc sudo , để có thể cài đặt phần mềm database PostgreSQL.

Khi đã sẵn sàng , hãy cài đặt PostgreSQL.

Cài đặt PostgreSQL

Nếu bạn chưa cài đặt PostgreSQL, hãy làm điều đó ngay bây giờ.

Đầu tiên, hãy cập nhật apt-get:

  • sudo apt-get update

Sau đó cài đặt PostgreSQL và các thư viện phát triển của nó:

  • sudo apt-get install postgresql postgresql-contrib libpq-dev

PostgreSQL hiện đã được cài đặt nhưng bạn nên tạo một user database mới, ứng dụng Rails của bạn sẽ sử dụng.

Tạo user database

Tạo user superuser PostgreSQL bằng lệnh này (thay thế từ được đánh dấu bằng tên user của bạn ):

  • sudo -u postgres createuser -s pguser

Nếu bạn muốn đặt password cho user database , hãy nhập console PostgreSQL bằng lệnh sau:

  • sudo -u postgres psql

Control panel PostgreSQL được biểu thị bằng dấu nhắc postgres=# . Tại dấu nhắc PostgreSQL, hãy nhập lệnh này để đặt password cho user database mà bạn đã tạo:

  • \password pguser

Nhập password mong muốn của bạn tại dấu nhắc , và xác nhận nó.

Đến đây bạn có thể thoát khỏi console PostgreSQL bằng lệnh lệnh sau:

  • \q

Hãy tạo một ứng dụng Rails ngay bây giờ.

Tạo ứng dụng rail mới

Tạo một ứng dụng Rails mới trong folder chính của bạn. Sử dụng tùy chọn -d postgresql để đặt PostgreSQL làm database và đảm bảo thay thế từ được đánh dấu bằng tên ứng dụng của bạn:

  • cd ~
  • rails new appname -d postgresql

Sau đó chuyển vào folder của ứng dụng:

  • cd appname

Bước tiếp theo là cấu hình kết nối database của ứng dụng.

Cấu hình kết nối database

User PostgreSQL mà bạn đã tạo sẽ được sử dụng để tạo database thử nghiệm và phát triển ứng dụng của bạn. Ta cần cấu hình cài đặt database thích hợp cho ứng dụng của bạn.

Mở file cấu hình database của ứng dụng trong editor yêu thích của bạn. Ta sẽ sử dụng vi:

  • vi config/database.yml

Trong phần default , tìm dòng có nội dung “ group : 5” và thêm các dòng sau vào bên dưới. Nó sẽ trông giống như thế này (thay thế các phần được đánh dấu bằng user và password PostgreSQL của bạn):

đoạn trích config / database.yml
  host: localhost   username: pguser   password: pguser_password 

Lưu và thoát.

Tạo database ứng dụng

Tạo database testdevelopment ứng dụng của bạn bằng cách sử dụng lệnh rake này:

  • rake db:create

Thao tác này sẽ tạo hai database trong server PostgreSQL của bạn. Ví dụ: nếu tên ứng dụng của bạn là “appname”, nó sẽ tạo database có tên “appname_development” và “appname_test”.

Nếu bạn gặp lỗi tại thời điểm này, hãy truy cập lại tiểu mục trước đó ( Cấu hình kết nối database ) đảm bảo rằng host , usernamepassword trong database.yml là chính xác. Sau khi đảm bảo thông tin database là chính xác, hãy thử tạo lại database ứng dụng.

Cấu hình thử nghiệm

Cách dễ nhất để kiểm tra xem ứng dụng của bạn có thể sử dụng database PostgreSQL hay không là thử chạy nó.

Ví dụ: để chạy môi trường phát triển (mặc định), hãy sử dụng lệnh này:

  • rails server

Thao tác này sẽ khởi động ứng dụng Rails của bạn trên server local của bạn trên cổng 3000.

Nếu ứng dụng Rails của bạn nằm trên một server từ xa và bạn muốn truy cập nó thông qua trình duyệt web, một cách dễ dàng là liên kết nó với địa chỉ IP công cộng của server của bạn. Trước tiên, hãy tra cứu địa chỉ IP công cộng của server của bạn, sau đó sử dụng nó với lệnh rails server như sau (thay thế nó cho phần được đánh dấu):

  • rails server --binding=server_public_IP

Đến đây bạn sẽ có thể truy cập ứng dụng Rails của bạn trong trình duyệt web thông qua địa chỉ IP công cộng của server trên cổng 3000:

Truy cập trong trình duyệt web:
http://server_public_IP:3000 

Nếu bạn thấy trang Ruby on Rails “Chào mừng bạn lên tàu”, ứng dụng của bạn đã được cấu hình đúng cách và được kết nối với database PostgreSQL.

Kết luận

Đến đây bạn đã sẵn sàng để bắt đầu phát triển ứng dụng Ruby on Rails của bạn , với PostgreSQL làm database , trên Ubuntu 14.04!

Chúc may mắn!


Tags:

Các tin liên quan

Cách sử dụng PostgreSQL với ứng dụng Ruby on Rails của bạn trên CentOS 7
2015-03-18
Cách cài đặt và sử dụng PostgreSQL trên Ubuntu 14.04
2014-04-28
Cách cài đặt và sử dụng Zope 2 và PostgreSQL trên Ubuntu 13.10
2014-03-25
Cách mở rộng quy mô theo chiều ngang một ứng dụng Laravel 4 với database PostgreSQL
2014-02-27
Mở rộng quy mô Ruby on Rails: Thiết lập một server PostgreSQL chuyên dụng (Phần 3)
2014-02-27
Cách thiết lập bản sao Master Slave trên PostgreSQL trên VPS Ubuntu 12.04
2013-10-29
Cách cài đặt và sử dụng PostgreSQL trên CentOS 6
2013-10-23
Cách backup database PostgreSQL trên VPS Ubuntu
2013-08-28
Cách bảo mật PostgreSQL trên VPS Ubuntu
2013-08-22
cách sử dụng role và quản lý quyền cấp trong PostgreSQL trên VPS
2013-08-05