在我的database.yml配置文件中进行设置时,为什么环境变量不起作用?

时间:2015-12-30 12:59:16

标签: ruby-on-rails ubuntu environment-variables tiny-tds

我目前在Ubuntu盒子上安装了Rails服务器。我已经尝试通过将它们添加为环境变量来正确设置我的数据库连接的用户名/密码,然后在我项目的database.yml文件中引用它们。当我对database.yml中的值进行硬编码时,它可以正常工作(如下所示)。

database.yml(硬编码)

production:
  <<: *default
  adapter: sqlserver
  host: hostname-for-server
  port: 1433
  database: production
  username: domian\my_username
  password: my_password
  pool: 25
  timeout: 15000

以下是我尝试做的事情,但它不起作用 - 因为我收到一条错误消息,指出无法与服务器建立连接。关于环境变量的附加说明。当我在Ubuntu终端中运行printenv时,会为SQLSERVER_USERSQLSERVER_PASS返回预期值。

〜/ .profile中

#...
export SQLSERVER_USER="domain\my_username"
export SQLSERVER_PASS="my_password"
export PATH="$PATH:$HOME/.rvm/bin"

项目\共享\配置\ database.yml的

default: &default
  pool: 25
  timeout: 15000

production:
  <<: *default
  adapter: sqlserver
  database: production
  username: <%= ENV['SQLSERVER_USER'] %>
  password: <%= ENV['SQLSERVER_PASS'] %>
  host: hostname-for-server
  port: 1433

0 个答案:

没有答案