9

I begin by launching the MySQL command line tool:

mysql --user=myusername --password=mypassword --silent --force -b

The last -b option is used to disable beep on error.

Then I choose a database:

use Mydatabasename;

Then I execute SQL form a file like this:

source c:\x\y\z\myfile.sql

That's when things go slowly. I've executed part of the file before so the console is filled with duplicate row errors which slow execution badly. I get 5-10 statements executed per second. Without duplicate rows the code executes tens of thousands of statements (30k+) every 5 seconds.

I need to do this since the file is large and I can't execute it in one go.

Paul White
  • 94,921
  • 30
  • 437
  • 687
Lzh
  • 193
  • 1
  • 1
  • 5

1 Answers1

11

Here is the problem. The OS has two modes to print things

  • stdout
  • stderr

The --silent only affects stdout. How do you nail stderr?

Try one of the following, and see if it works:

mysql --user=myusername --password=mypassword --silent --force -b 2> nul
mysql --user=myusername --password=mypassword --silent --force -b --tee=nul

Give it a Try !!!

CAVEAT : I have dealt with something this before when answering a question about mysqldump : How to log verbose output from mysqldump?

RolandoMySQLDBA
  • 185,223
  • 33
  • 326
  • 536