2017-01-10 3 views
-2

パテを介して私のubunutu mysqlデータベースのクエリにいくつかの挿入を実行しようとするたびに、更新に失敗した1つ以上の行からエラーが発生し、おそらく不完全なクエリからクラッシュするか、一時停止します。これは、個々に実行したときにうまく動作するように、クエリの構文とは関係ありません。私はこれを修正するために何かできることがありますか?パテを介して何千ものMySQLクエリを実行

+0

「PuTTY経由で」とはどういう意味ですか?これらのクエリをどのくらい正確に実行していますか?あなたはSSHingして、手動で 'mysql'プロンプトに入力していますか?あなたは '.sql'ファイルからそれらを実行しようとしていますか? –

+0

おそらくトランザクション内でINSERTクエリをラップする必要があります。クエリの前に 'START TRANSACTION;'(または 'BEGIN;')を実行し、その後に 'COMMIT;'を実行してください。参照:https://dev.mysql.com/doc/refman/5.5/en/commit.html –

+1

PuTTYは常時接続されていますか? – cwallenpoole

答えて

0

私はRocketのソリューションを試しましたが、それは同じことを(行をスキップしてハングする)多くのことをしました。

キャリッジリターンと改行がデータに含まれていることにお気づきになりました。これらを削除した後、エラーがなくても動作しているように見えますが、BEGIN、COMMITメソッドを使用しています。たぶん、一度にいくつかの行ではなくただ一つの本当に長い行を解析するだけだからです。

+0

「コメントを追加」ボタンをクリックしたときに、それに続いて、既に回答を投稿した回答またはその効果の言葉に返信を追加する旨の説明が続きました。 – garry

0

excelスプレッドシートからputtyのmysqlコマンドラインにクエリをコピー&ペーストしています。パテはいつもつながっている。パテは表示される行数に制限があるため、デバッグするのは難しいことです。 - ガリー45分前

これをしないでください。パテはペーストしたコンテンツの一部を削除したり、長さの制限を設定したりします。代わりに

:お使いのPC上のテキストファイルにExcelから

  1. エクスポートクエリ、例えば "exported_queries.sql"。
  2. テキストファイルをUbuntuサーバーに転送します(scpを使用)。
  3. その後、sshセッションをUbuntuサーバーに開き、テキストファイルをmysqlプログラムの入力として実行します。あなたはmysqlシェルでsourceコマンドでこれを行うことができます。

    mysql> source exported_queries.sql 
    

これらのプログラムもパテが接続を切断すると生きているあなたのセッションを維持するための優れているので、私はまた、あなたのUbuntuのSSHウィンドウでtmuxまたはscreenを実行することはお勧め。 sshセッションで長時間実行しているコマンドがある場合は、再接続して進行中のセッションに「再接続」することができます。

+0

私はscpが何であるかは分かりませんが、私のUbuntu vpsにファイルをsftpしてもよろしいですか?改行と改行をSQL​​ファイルに残すことはできますか?私はメモ帳+でこれらを削除し、beginとcommitを使って680行のクエリを実行し、45分後にはまだ実行しています。これは、1分あたり約80語のコードを画面上で解析しています。 – garry

+0

私のパテ接続は非常に堅いです。コンピュータを休止状態にすると接続が切断されます(私は0に設定して接続を設定していると思います) – garry

+0

パテを忘れてしまいました。 pscp *。ドキュメンテーション:https://the.earth.li/~sgtatham/putty/0.67/htmldoc/Chapter5.html#pscp psftpにもっと慣れているなら、それは問題ありません。 –

関連する問題