SQL SERVER – Running Multiple Batch Files Together in Parallel

Recently I was preparing a demo for my next technical session, I had to do run a SQL code in parallel. I decided to use Batch File to run the code.

I am not the best guy to with command shell so I did it with following setup.

Code of tsql.sql

SELECT 1 ColumnName

Code of command.bat

sqlcmd -S . -i tsql.sql
timeout 100

Code of  AllBatch.bat

start cmd.exe /C “command.bat”
start cmd.exe /C “command.bat”
start cmd.exe /C “command.bat”

Now I ran AllBatch.bat and it run all the three files in parallel and simulated my needed scenario.

SQL SERVER - Running Multiple Batch Files Together in Parallel multicmd

I believe there should be simpler way using power-shell. Anybody want to come up with equivalent code which is improvement to this code?

Reference: Pinal Dave (https://blog.sqlauthority.com)

SQL Scripts, SQL Utility
Previous Post
SQL SERVER – Concurrency Problems and their Relationship with Isolation Level
Next Post
SQL SERVER – Enable PowerPivot Plugin in Excel

Related Posts

7 Comments. Leave new

  • Laerte Junior
    March 6, 2011 8:01 am

    Hi Pinal, you can do the same using Powershell, but in one POSH Session, using Powershell JOBS running asynchronous with the Star-Job cmdlet. :)

    Reply
  • You can use either this:
    for %i in (1 2 3 4) do start cmd.exe /C command.bat

    or

    Abandon batch file all together, and create “temporary” scheduled tasks “on-the-fly”, and invoke sp_start_job against them.

    Reply
  • you should use ostress.exe

    Reply
  • @kendra_little posted a solution here:

    Reply
  • How to run multiple .sql files using a single batch file in parallel using the sqlcmd utility. ?

    Reply

Leave a Reply