This project is read-only.

Getting Started

Steps 1-2-3

  1. Install SQL Nexus and RML Utilities
  2. Collect perf data from your SQL Server 2005/2008/2008R2/2012/2014 instance using pssdiag.
  3. Import and analyze the data using SQL Nexus


  1. Use this SQL Nexus Introductory Video to install

Collecting data

In order to use SQL Nexus, first you will need data collected. You need to use  pssdiag/sqldiag manager on codeplex to collect data for SQL Nexus to consume


Analyzing data

  1. Launch sqlnexus.exe and log on to the non-production SQL Server instance where you installed SQL Nexus.
  2. Click on "Import" in the left pane of the main SQL Nexus window.
  3. Provide the file directory where you stored the data collected by SQLDiag. Note: you should provide a directory path, not a file name.
  4. Once the import is finished, you can click on various reports from the left pane of SQL Nexus tool. Start with the "Bottleneck Analysis" report to determine where most query execution time was spent


Look at the training section of pssdiag.

Last edited Apr 13, 2015 at 8:05 PM by jackli, version 22


HotRats Apr 11, 2017 at 11:47 PM 
LTDB I believe you can use DiagManager to disable collection of trace files and perfmon logs. What will be left are essentially the DMV scripts. What SQL Nexus is able to report depends upon what was chosen to be collected (tip: use DiagManager). Many SQL Nexus reports depend upon trace files having been collected.

If you are unfamiliar with the performance impact of tracing, use DiagManager's standard template (it creates a 'light' trace), and first practice collecting data on a non-production SQL Server. Import that collected practice data through SQL Nexus (to see what reports can be generated). Once familiar, try DiagManager's "Detailed" template on a non-production SQL Server, import and test again.

LTDBA Apr 16, 2014 at 10:34 PM 
Is it possible to collect and analyze the data by running the two .sql files from the SQL Agent? I can output the files using the Agent, but am unable to use Nexus to read them. Nexus will import the files, but not without errors and most of the reports are not available. It appears to be a formatting issue. I'd like to be able to run the dmv's on a continuous basis to collect the data without using the sqldiag or pssdiag utilities. Is there a way to understand how the SQLDiag util formats the output? Thanks.

sgdevaney Apr 2, 2013 at 8:43 AM 
The link to the tutorial is still broken. Can the owner(s) of the page please correct this.

ReplTalk Sep 19, 2012 at 8:40 PM link is broken.

threesun Nov 3, 2011 at 6:54 AM 
alternatively, you can go to this article for guidelines. it is quite useful...

HotRats Sep 24, 2010 at 6:33 AM 
The message "The database doesn't have the necessary data to run this report" can be raised when a different version of SQL Server is chosen. For example, if SQL Nexus has pricessed a SQL Server 2005 instance, and yet "SQL Server 2008" is clicked, the message "The database doesn't have the necessary data to run this report" can be raised. There are other reasons for this message (as Bart and Venu suggest), such as a case-sensitive SQL Server hosting the sqlnexus database (i.e. _not_ the case-sensitivity of the SQL Server from which data had been collected). But clicking (in SQL Nexus) upon all the other SQL Server version links (to see whther they raise the same "necessary data" message) should at least be a quick and dirty sanity check :).

bartduncan Jul 30, 2009 at 6:09 PM 
Steve, was SQLDiag configured to collect Perf Stats Script output? That's what those two reports are based on. Follow the "Collecting Data" instructions on this page to get your data, and it should work.

dbist Jun 16, 2009 at 5:19 PM 
My collation is case-insensitive and I still get the same message.

venukm Nov 24, 2008 at 11:04 PM 
If the collation for your server is case sensitive, I have seen these 2 reports not working and throwing the above error (You can find the collation by executing the stored proc sp_helpsort). Load the data onto a server where the collation is case insensitive and these 2 reports will work as expected.

steve67 Apr 10, 2008 at 9:46 PM 
I was asked to analyze statistics that were gathered by SQLDIAG. So I installed SQL Nexus (step 1) and imported the SQLDIAG directory (step 3). When I click on the "Blocking and Wait Statistics" report, I get a "The database doesn't have the necessary data to run this report" error. I get the same thing for the "Bottleneck Analaysis" report. Can someone help me get SQL Nexus configured properly?

BTW, I *do* get results when I click on the "Realtime - Server Status" report but it appears to be stats on my non-production SQL Nexus database.