加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Rails4 使用postgreSQL做数据库

发布时间:2020-12-13 17:18:39 所属栏目:百科 来源:网络整理
导读:1. 首先在ubuntu下安装postgresql sudo apt-get install postgresql 2.启动postgresql服务器 sudo /etc/init.d/postgresql start 3.登陆postgresql postgresql安装完成后默认只有一个用户、就是postgres、所以只能切换成这个用户登录 sudo su postgres -c ps

1.首先在ubuntu下安装postgresql

sudo apt-get install postgresql

2.启动postgresql服务器

sudo /etc/init.d/postgresql start

3.登陆postgresql
postgresql安装完成后默认只有一个用户、就是postgres、所以只能切换成这个用户登录

sudo su postgres -c psql

更改postgres的密码

ALTER USER postgres WITH PASSWORD '123456';

4.在rails中配置
1.在Gemfile中添加

gem 'pg'

再执行一次bundle install 安装gem
2.配置rails项目中的config/database.yml

# Configure Using Gemfile
# gem 'pg'
#
default: &default
  adapter: postgresql
  encoding: unicode
  username: postgres
  password: 123456
  # For details on connection pooling,see rails configuration guide
  # http://guides.rubyonrails.org/configuring.html#database-pooling
  pool: 5

development:
  <<: *default
  database: cool_development

test:
  <<: *default
  database: cool_test


production:
  <<: *default
  database: cool_production
  username: cool
  password: <%= ENV['COOL_DATABASE_PASSWORD'] %>

3.解决ActiveRecord::NoDatabaseError (FATAL: database "cool_development" does not exist
rails不会自动给建立数据库 所以要手动建立自己要使用的数据库

createdb cool_development -U postgres

出现错误:psql: FATAL: Peer authentication failed for user “postgres”,解决办法如下:
1. 运行下面的命令编辑pg_hba.conf文件

sudo gedit /etc/postgresql/9.1/main/pg_hba.conf
2. 将

`# Database administrative login by Unix domain socket
local   all             postgres                                peer`

改为

# Database administrative login by Unix domain socket
local   all             postgres                                trust
  1. 保存后执行下面的命令重新加载配置文件:
sudo /etc/init.d/postgresql reload

再执行 createdb cool_development -U postgres , 已经成功的创建了cool_development 数据库.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读