Installation
Install the Windows desktop app, use the offline installer when required, and verify signed binaries for change control.
If you are installing the product for the first time, do not stop at the installer. A successful setup also includes SQL access, Query Store preparation, and at least one working AI provider.
- Download the Windows installer that matches your environment.
- Run the installer with a normal interactive setup, or use a silent install flow if your deployment policy requires it.
- Launch the app and complete trial or license validation before deeper setup.
- Open Settings and complete Database plus AI / LLM configuration before attempting analysis.
# Example silent install msiexec /i "SQL Performance Intelligence.msi" /quiet /norestart
- A reachable SQL Server host or instance name
- The correct SQL port if it is not 1433
- A read-only SQL login or approved Windows account
- A target database name
- A decision on local Ollama or cloud LLM usage
The application works best with a dedicated read-only monitoring login. This is the safest setup because the app can inspect performance metadata and object definitions without receiving write rights on business tables.
- VIEW SERVER STATE for server-level DMVs
- VIEW DATABASE STATE for Query Store and database-scoped DMVs
- VIEW DEFINITION for procedure, view, and function text
- Read-only msdb access for jobs, mail health, and related diagnostics
- No db_owner
- No direct read access to business schemas unless your policy requires it
- No INSERT, UPDATE, or DELETE
- No SQL Agent job start or stop rights for normal onboarding
-- DBA example: create a read-only monitoring login CREATE LOGIN [PerfTuningUser] WITH PASSWORD = 'ChangeThisStrongPassword!'; GRANT VIEW SERVER STATE TO [PerfTuningUser]; USE [YourDatabase]; CREATE USER [PerfTuningUser] FOR LOGIN [PerfTuningUser]; GRANT CONNECT TO [PerfTuningUser]; GRANT VIEW DATABASE STATE TO [PerfTuningUser]; GRANT VIEW DEFINITION TO [PerfTuningUser]; USE [msdb]; CREATE USER [PerfTuningUser] FOR LOGIN [PerfTuningUser]; GRANT SELECT ON dbo.sysjobs TO [PerfTuningUser]; GRANT SELECT ON dbo.sysjobactivity TO [PerfTuningUser]; GRANT SELECT ON dbo.sysjobhistory TO [PerfTuningUser];
If your environment uses Windows Authentication, the same principle applies. Instead of creating a SQL login, your DBA can map the required grants to your Windows login or AD group.
Query Store should be enabled on every database you want to analyze seriously. It gives the app historical evidence, better ranking, plan-history context, and stronger regression detection.
- Enable it per database, not once for the whole SQL Server instance.
- Use READ_WRITE mode so the database continues collecting runtime history.
- Keep QUERY_CAPTURE_MODE = AUTO for a practical default starting point.
- If your SQL Server version supports it, enable wait-stat capture too.
ALTER DATABASE [YourDatabase] SET QUERY_STORE = ON;
ALTER DATABASE [YourDatabase] SET QUERY_STORE (
OPERATION_MODE = READ_WRITE,
QUERY_CAPTURE_MODE = AUTO,
CLEANUP_POLICY = (STALE_QUERY_THRESHOLD_DAYS = 30)
);
-- Optional on supported SQL Server versions:
-- ALTER DATABASE [YourDatabase] SET QUERY_STORE (WAIT_STATS_CAPTURE_MODE = ON);- Install Ollama on the machine that will run the app or on an approved internal host.
- Make sure the service is running.
- Pull at least one model before opening the provider test inside the app.
ollama serve ollama pull codellama
- Collect the API key before opening Settings.
- For Azure OpenAI, also collect the endpoint and deployment name.
- Decide which provider should be your daily default before adding experimental ones.
- Open the application.
- Go to Settings > License.
- Generate a device ID if the field is empty.
- Start a trial or validate your license token.
- Then continue with Database and AI / LLM setup.