As to the long running procedure, you can bring up SQL Server Profiler again and add in the event "SP:StatementStarting" and "SP:StatementCompleted." This will show you each command within the stored procedure and how long each command takes. You can then find the command with the high run time and tune that specific query. Normally, this will be caused by incorrect indexing on one or more tables used by the query.
Dig Deeper on SQL Server Stored Procedures
Related Q&A from Denny Cherry
Find out where to look for the current amount of SQL Server database disk space being used in your environment. Continue Reading
If you have exceptionally large SQL Server databases, refer to these best practices for proper database maintenance to steer clear of a website '... Continue Reading
Discover a tool that synchronizes two SQL Server databases allowing changes to one SQL Server database to update on the other. Continue Reading