mysql
コマンドラインで、 Control-C プログラムをキャンセルし、bashに戻ります。 postgres用のpsql
では、現在のクエリを強制終了し、psqlプログラムを停止しません。のpsqlスタイルの動作を取得する方法はありますか Control-C mysqlプログラムで?私は自分が押していることに気づき続けます Control-C 習慣とmysqlに再度ログインする必要があります。
Control C bashを強制終了せず、押すとログアウトします。これは良いことだと思います。 Control-C 「あなたがしていることをやめる」という意味です。
クエリの実行中に5.1でCtrl-Cを押す の場合、「クエリの実行が中断されました」というメッセージが表示されて実行が停止します。
mysql> INSERT INTO c SELECT Rand()* 1000、sha1(Rand())FROM c; クエリはCtrl + C によって中止されましたエラー1317(70100):クエリの実行中断されました
さらに Ctrl-C プレスはクライアントを殺します。
問題で述べたように、古いバージョンはひどく死ぬので、 アップグレード 可能であれば:)
編集:
アンディが言うように、それは後のバージョンで修正されています。
古いバージョンには同等のキーボードショートカットはありません。
ただし、次のCLIフラグを使用して発生を防ぐことができます。
--sigint-ignore
Ignore SIGINT signals (typically the result of typing Control-C).
Ctrl-cを使用する代わりに\ cを行の終わりに追加すると、mysqlを終了せずに行を強制終了できます。
簡単な答え:2014年の初めの時点で、mysqlで説明されている動作を行う方法はありません。 関連するバグレポート およびdba.stackexchangeの3人の異なるページ v5.5ではまだ修正されていないことをコメント を参照してください。また、長いグーグルの後で私が知る限り、使用する価値のある回避策はありません(以下の--sigint-ignoreが良くない理由を参照してください)。 Andyの回答は、「5.0.25(および5.1.10)で追加されたようです」と編集されました。しかし、彼はおそらく、前述のバグレポートの日付[2006年5月3日19:04]のコメントに惑わされました。
--sigint-ignore引数(Dan Carleyの回答を参照)は、ctrl-Cを押したときにmysqlがシェルに戻るのを実際に停止しますが、長時間実行されるクエリを停止する機能も削除します。
これは、使いやすさのバグの一種です:-(本当に明白で、おそらく非常に簡単に修正できますが、それでもここでは何年も経っています。