Я искал в архиве, но не смог найти ответ на свою дилемму. Я кодирую в Ruby и использую структуру watir webdriver на своем локальном Mac Yosemite и хочу подключиться к базе данных postgres в linux box.Не удалось подключиться к postgresQL с Ruby
Я установил необходимые рубиновые камни на моем локальном компьютере Mac
* МЕСТНЫЙ GEMS *
- DBD-пг (0.3.9)
- пг (0.18.4)
- dbi (0.4.5, 0.4.4)
Я использую следующий код.
require 'rubygems'
require 'pg'
require 'dbd/pg'
require 'dbi'
conn = PGconn.connect("10.0.xx.xx","5432",'','',"mydbname","dbuser", "")
res = conn.exec('select * from priorities_map;')
puts res.getvalue(0,0)
conn.close if conn
При управлении этой я получаю эти ошибки
.initialize': Could not connect to server: Connection refused (PG::ConnectionBad)
Is the server running on host "10.0.xx.xx" and accepting
TCP/IP connections on port 5432?
Если я использовать код
dbh = DBI.connect("dbi:pg:mydbname:ipaddress", "user", "")
row = dbh.exec('select * from etr_priorities_map;')
puts row.getvalue(0,0)
dbh.disconnect if dbh
Я получаю ошибку
block in load_driver': Unable to load driver 'pg' (underlying error: wrong constant name pg) (DBI::InterfaceError) from System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/monitor.rb:211:in `mon_synchronize'
Я новичок Рубин. Как я могу решить эти проблемы?
можете ли вы подключить telnet к порту 5432 на этом IP-адресе? Является ли postgresql прослушиванием этого IP-адреса? первое сообщение об ошибке - это сервер, отрицающий соединение, не связанный с вашим кодом и т. д. Будет изменен, если он не прослушивается. – Doon