Delphi能通過SSH登入Linux,串連MYSQL取數嗎?像Navicat一樣

來源:互聯網
上載者:User

標籤:

百度隨時就能搜,你就懶得搜下。
http://tieba.baidu.com/p/671327617

Ssh tunnel通常能實現3種功能
1) 加密網路傳輸
2) 繞過防火牆
3) 讓位於廣域網路的機器串連到區域網路內的機器

---------------------------------------------------------------------------------

Delphi能通過SSH登入Linux,串連MYSQL取數嗎?

SSH是遠端連線Linux的其中一種通道方式。
目前Linux的MYSQL不允許開放遠端存取,因此只能SSH登入Linux後訪問MYSQL。

像Navicat 有參數是SSH通道,填Linux伺服器的IP、使用者、密碼,
還有參數填安裝在Linux下的MYSQL IP、使用者、密碼,Navicat能串連上MYSQL取數了

Delphi的組件基本只能直連填MYSQL IP、使用者、密碼,目前找不到相關先通過SSH,再MYSQL串連的資料啊。
不知道用什麼方法能在本地通過SSH串連上遠程Linux伺服器上的MySQL

求大俠們指點指點

---------------------------------------------------------------------------------

謝謝各位大俠,經過2天的摸索,基本把功能實現了。
大部分SSH串連軟體都有SSH通道轉寄功能,就是用這個實現的。

如果Delphi在代碼上實現的話,用libSSH 或者 SecureBridge都可以。

代碼基本不用帖,思路給大家講一下吧。

SSH有連接埠轉寄(映射)功能,把Linux的MYSQL連接埠,映射到本機對應的連接埠後,
然後訪問就等於本機安裝了MYSQL直接存取了。

---------------------------------------------------------------------------------

到UniDAC的Demos\TechnologySpecific\SecureBridge 目錄裡安裝好控制項.然後添加CRSSHIOHandler控制項,再在設定一下unidac的IOHandler就可以使用SecureBridge了

再通過 xuchuantao (暗黑天使) 大俠的指點:
目前可以通過SSH通道連接埠映射或者

用 UniDac + SecureBridge 實現。

UniDAC的Demos\TechnologySpecific\SecureBridge 還有個CRSSLIOHandler組件要安裝

拖出 SSHClient、SSHChannel、 CRSSLIOHandler、FileStorage 組件
UniConnection IOHandler屬性關聯一下組件 CRSSLIOHandler

再按一般直連方式填入 MySQL串連資訊即可

SSHClient組件 HostName(Linux伺服器IP)、PassWord(密碼)、Port(連接埠)、User(Linux 登入使用者如:ROOT)

然後就全部OK了

當然SSH要KEY才可以的 在SSHClient 的 OnServerKeyValidate 事件加入
var
Key: TScKey;
fp, msg: string;
begin
Key := ScFileStorage.Keys.FindKey(ScSSHClient.HostName);
if (Key = nil) or not Key.Ready then
begin
NewServerKey.GetFingerPrint(haMD5, fp);
NewServerKey.KeyName := ScSSHClient.HostName;
ScFileStorage.Keys.Add(NewServerKey);
Accept := True;
end;
end;

才行,否則啟動並執行時候串連會提示 Host key not verified

然後就可以愉快的串連了,當然MySQL亂碼問題還是要設定一下utf8 和 useunicode

http://bbs.2ccc.com/topic.asp?topicid=504027

http://bbs.2ccc.com/topic.asp?topicid=516086

Delphi能通過SSH登入Linux,串連MYSQL取數嗎?像Navicat一樣

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.