且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

如何在ruby中创建ssh隧道,然后连接到远程主机上的mysql服务器

更新时间:2023-01-20 07:56:04

我能够使用mysql2 gem在没有fork的情况下使它正常工作

I was able to get this to work without a fork using the mysql2 gem

require 'rubygems'
require 'mysql2'
require 'net/ssh/gateway'

gateway = Net::SSH::Gateway.new(
  'remotehost.com',
  'username'
 )
port = gateway.open('127.0.0.1', 3306, 3307)

client = Mysql2::Client.new(
  host: "127.0.0.1",
  username: 'dbuser',
  password: 'dbpass',
  database: 'dbname',
  port: port
)
results = client.query("SELECT * FROM projects")
results.each do |row|
  p row
end
client.close