sql >> データベース >  >> RDS >> Mysql

ターミナル(ssh)を介してfortrabbitmysqldbにアクセスできません

    私は過去にSSHトンネル を使用してこれを解決しました。 。サーバーへのSSHトンネルを開き、そのトンネルのエンドポイントからそこにあるMySQLサーバーに接続します。そのため、MySQLには、ローカルに接続しているように見えます。

    ターミナルから:

    まず、トンネルを開く必要があります。次のように行うことができます:

    ssh -N -L8889:127.0.0.1:3306 [email protected] &
    

    これにより、ポート8889が開き、your.fortrabbit.domain.comへのトンネルが開きます。 、次にそのローカルポートを経由で転送します IP127.0.0.1およびポート3306へのトンネル相対 your.fortrabbit.domain.comのサーバーに 。

    オプションの詳細:

    -N :リモートコマンドを実行しないでください。
    -L :ポート(ローカルおよびリモート)を指定します。
    8889 :転送されているローカルポート。
    127.0.0.1 :sshが接続しているサーバーを基準にした転送先のリモートIP
    3306 :転送先のリモートポート。
    [email protected] :ユーザー名とドメインとfortrabbit。

    これで、接続を開く準備ができました。同じ端末で、次のコマンドを使用します。

    mysql -h 127.0.0.1 -P 8889 -u mysql-username -p
    

    ポート8889は、fortrabbit側のMySQLサーバーのポートとIPに転送されているため、mysql-usernameを置き換えるだけです。 mysqlサーバーでユーザー名を使用すると、接続されます!

    GUIから:

    コメントでUbuntuを使用していると述べたので、ソフトウェアセンターまたはここNew Connectionを作成します 接続タイプを「Standard TCP/IP over SSH」として選択します "。

    以下を構成する必要があります:

    SSH Hostname :fortrabbitを使用したsshアカウントのホスト名またはIP
    SSH Username :ユーザー名とその
    SSH Password :パスワードと一緒に
    SSH Keyfile :認証にキーを使用する場合は、ここで秘密のキーを選択してください。
    MySQL Hostname :127.0.0.1(トンネルのエンドポイントに対してローカルであるため。
    MySQL Server Port :通常は「3306」です。
    Username :DBのユーザー名
    Password :DBのパスワード
    Default Schema :このDBのデフォルトスキーマとなるものは何でも(空白のままにすることができます)。

    そうすれば、どこにいても接続できるはずです!




    1. SQLServerの命名規則に関する感情に訴えない論理的考察

    2. MySQLルートパスワードを削除する方法

    3. MySQLコネクタ/C++でどの実行関数を使用する必要がありますか?

    4. PostgreSQLエラー:42P01:リレーション[テーブル]が存在しません