2017-04-24 8 views
2

SequelProを使用している場合、リモートのmysqlデータベースサーバに接続するには「SSLを使用して接続」オプションをチェックする必要がありますが、以下のスクリーンショットに示す「キーファイル」、「証明書」、sequel proがmycliで "connect using ssl"をチェックするのと同等ですか?

SequelPro connect with SSL

mycliでそれを行うための同等の方法はありますか?または単に平文mysqlコマンド?

答えて

0

これは--sslオプションで、「暗号化された接続を有効にする」という意味です。

mysql --ssl 

MySQLのCLI(mysql)のコマンドラインフラグの完全なリストは、ここで見つけることができます:

https://dev.mysql.com/doc/refman/5.7/en/encrypted-connection-options.html

私はそのチェックボックスを検証する証明書などの空想として何もしないことを信じていません(すなわち、それは--ssl-verify-server-certオプションで合格しません)。

+1

ありがとうございますが、[mycli](https://github.com/dbcli/mycli)に相当するオプションが '--ssl'の場合は分かりますか? –

+0

には[これらのフラグ](https://github.com/dbcli/mycli/blob/27cbf6b87b1cfb3d20ddc2d9d6e0323ef99b047e/mycli/main.py#L901-L912)があります。 'pymysql.connect()'を呼び出します。 [https://github.com/PyMySQL/PyMySQL/blob/4b7e9c98c0441449352d732f6a2453e4c868505c/pymysql/connections.py#L554-L556]を['mysql-ssl-set()']に渡します(https:// dev .mysql.com/doc/refman/5.7/ja/mysql-ssl-set.html)。明示的な "暗号化"フラグはありません。 _サーバが暗号化された接続をサポートしている場合、MySQLプログラムは暗号化を使用して接続しようとします。暗号化された接続を確立できない場合は、暗号化されていない接続に落ちます。 – Birchlabs

+1

暗号化を強制したい場合は、 '?しかし、実際に必要なのは--ssl-modeです(つまり、 'MYSQL_OPT_SSL_MODE')。これは 'mysql-ssl-set()'便宜関数では設定できません。代わりに 'mysql-options()'によって公開されます。 pymysqlが 'mysql-options()'へのアクセスをどこにでも公開しているかどうか( 'mycli'がアクセス権を公開するかどうか)を調べる必要があります。 – Birchlabs

関連する問題