2017-02-03 29 views
1

リモートサーバー上にホストされているMySQLデータベースを読み書きすることは可能ですか?私。 SSH経由でデータベースに接続してCRUD操作を直接行うことはできますか?iOS/Swift:SSH経由でリモートMySQLを直接操作する

iOSでSSHを使用することはできますか。イメージをリモートサーバーなどにコピーしますか?

+1

これは公に分散アプリケーションのためのものである場合、それはおそらく賢明ではないでしょう...誰かがあなたの資格情報をリバースエンジニアリングしてから、グローバルな変更を加えることができます。 (私はあなたのアプリケーションの各コピーに別個の資格情報を与えることを前提としていません) –

答えて

1

NMSSHのようなフレームワークを使用できます - here on Githubを参照してください。ここ

はcagnuleinによってprojectから採取した使用例である:

var host = "your-host.com" 
var username = "user" 
var password = "pass" 
var session = NMSSHSession(host: host, andUsername: username) 

session.connect() 

if session.connected == true { 
    session.authenticateByPassword(password) 
    if session.authorized == true { 
     NSLog("Authentication succeeded") 
    } 

    var error = NSErrorPointer() 
    var response = session.channel.execute("ls", error: error) 

    NSLog("List of my files %@", response) 
} 

session.disconnect() 

スイフト4 &最新NMSSHバージョン

do { 
    let host = "example.com" 
    let username = "user" 
    let password = "pass" 
    let session = NMSSHSession(host: host, andUsername: username) 

    session?.connect() 
    if session?.isConnected ?? false { 
     session?.authenticate(byPassword: password) 
     if session?.isAuthorized ?? false { 
      print("Authentication succeeded") 
     } 
     let response = try session?.channel.execute("ls") 
     print("List of my files:", response) 
    } 
    session?.disconnect() 
} catch { 
    print(error) 
} 
+0

はここでもMySQLが可能ですか? – swalkner

+0

sshホストにアクセスしてコマンドを実行できます。あなたは可能なmySQLを意味するか分からない。 –

+0

しかし、これはiOSで端末の出力を解析する必要があることを意味しますか?私が必要とするのは、例えばテーブルからのすべての行 - このように可能ですか? – swalkner

関連する問題