SQL Load testing

  • Hi

    I am a bit of a newbie with SQL and I am currently looking at what my database server can handle before it falls over. Does anyone know of any load testing software or a script that can perform the operation? I want to see how many thousands of users can access the database simultaneously, before it affects the performance.

    Any advice or tips would be much appreciated.

    Cheers

  • Try looking at http://www.microsoft.com/technet/treeview/default.asp?url=/technet/prodtechnol/sql/reskit/sql2000/part11/c3961.asp

    it is the SQL resource Kit which has a "Database Hammer". This may do what you are looking for.

    quote:


    Hi

    I am a bit of a newbie with SQL and I am currently looking at what my database server can handle before it falls over. Does anyone know of any load testing software or a script that can perform the operation? I want to see how many thousands of users can access the database simultaneously, before it affects the performance.

    Any advice or tips would be much appreciated.

    Cheers


  • I suppose you are prepared to handle the licencing issue. i.e. you have a processor licence instead of server/CAL based licence otherwise you wont be able (or allowed to access your database more then allowed).

    Having said that I think the fastest way would be to develope a client side miniapp which tries to make as much connection as possible. You can do this in virtually any dev tool VB, C, Delph, ...

    Here is an example in Delphi:

    procedure TForm1.Button6Click(Sender: TObject);

    var

    DB: array of TADOConnection ;

    i, j: Integer ;

    begin

    j := StrToInt(Edit1.Text) ;

    SetLength(DB, j) ;

    try

    for i:=0 to j-1 do

    begin

    DB := TADOConnection.Create(Self);

    DB.ConnectionString := 'Provider=SQLOLEDB.1;Password=MyPwd;Persist Security Info=True;User ID=MyUser;Initial Catalog=MyDB;Data Source=MyServer' ;

    DB.Open ;

    Edit4.Text := IntToStr(i) ;

    end ;

    for i:=0 to j-1 do

    begin

    DB.Close ;

    DB.Destroy ;

    end ;

    except

    on E: Exception do ShowMessage(E.Message) ;

    end ;

    end;

    Of cours once you have established the connection you can do what you want as DB actions.

    To make it more paralell you can use multithreading or initiate several apps paralelly.

    Bye

    Gabor



    Bye
    Gabor

  • Cheers

    Your advice has been very helpful

Viewing 4 posts - 1 through 3 (of 3 total)

You must be logged in to reply to this topic. Login to reply