---
name: "pmdamssql"
section: "1"
platform: "linux"
package: "pcp"
version: "7.2.2-2"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/pmdamssql"
---

# pmdamssql(1)

Microsoft SQL Server database PMDA

## NAME

**pmdamssql** - Microsoft SQL Server database PMDA

## DESCRIPTION

**pmdamssql** is a Performance Co-Pilot (PCP) Performance Metrics Domain Agent (PMDA) which extracts live performance data from a running Microsoft SQL Server database server.

## CONFIGURATION

Firstly, **pmdamssql** requires installation of these support packages:

- **mssql-server**

  The primary Microsoft SQL Server database package.

- **msodbcsql18**, **msodbcsql17** or **msodbcsql**

  Microsoft SQL Server ODBC bindings.

- **pyodbc**

  General Python ODBC module with Microsoft SQL Server support enabled.

Next, **pmdamssql** reads an optional ini-style configuration file:

-

  -

  *`$PCP_PMDAS_DIR`/mssql/mssql.conf*

This file currently allows for two sections, one for configuring the library that connects to SQL server, the other for authenticating with SQL server.

**\[connection\]** section specifies values for the following settings (their default values are shown in parenthesis):

- **driver (*{ODBC Driver 17 for SQL Server}*)**

  ODBC driver string.

- **server (*tcp:localhost*)**

  SQL Server socket connection string.

- **timeout (*2*)**

  Connection timeout setting, in seconds.

**\[authentication\]** section specifies values for the two supported modes of authentication with SQL Server.

The default is to use SQL Server authentication, which requires a username and password to be provided. These are the following configuration settings (their default values are shown in parenthesis):

- **username (*pcp*)**

  Username to connect to the database.

- **password (empty)**

  Password to connect to the database.

Note that if a SQL Server Assessments API configuration file is found at */var/opt/mssql/secrets/assessment*, then **pmdamssql** reads the username and password from that file preferentially. The format is simply a two line text file, the first containing the username and the second the password.

The second option is Windows authentication mode, where logins are created in SQL Server that are not based on operating system user accounts.

- **trusted (*false*)**

  Set to *true* to use Windows authentication when connecting to the database.

This is a Kerberos-style connection and credentials must be available before the PMDA is started (see [**kinit**(1)](/kinit/1.md) for further details).

## INSTALLATION

To install, the following must be done as root:

```
# cd $PCP_PMDAS_DIR/mssql
# ./Install
```

To uninstall, the following must be done as root:

```
# cd $PCP_PMDAS_DIR/mssql
# ./Remove
```

**pmdamssql** is launched by [**pmcd**(1)](/pmcd/1.md) and should never be executed directly. The **Install** and **Remove** scripts notify [**pmcd**(1)](/pmcd/1.md) when the agent is installed or removed.

**pmdamssql** will automatically attempt to reconnect to the SQL Server if its connection is lost - e.g. if the SQL Server service is restarted.

## FILES

- *`$PCP_PMDAS_DIR`/mssql/mssql.conf*

  configuration file for the **pmdamssql** agent

- *`$PCP_PMDAS_DIR`/mssql/Install*

  installation script for the **pmdamssql** agent

- *`$PCP_PMDAS_DIR`/mssql/Remove*

  undo installation script for the **pmdamssql** agent

- *`$PCP_LOG_DIR`/pmcd/mssql.log*

  default log file for messages from the **pmdamssql** agent

Note that the usual/default value for **$PCP\_PMDAS\_DIR** is **/var/lib/pcp/pmdas** and the default for **$PCP\_LOG\_DIR** is **/var/log/pcp** but these settings are platform dependent.

## PCP ENVIRONMENT

Environment variables with the prefix **PCP\_** are used to parameterize the file and directory names used by PCP. On each installation, the file */etc/pcp.conf* contains the local values for these variables. The **$PCP\_CONF** variable may be used to specify an alternative configuration file, as described in [**pcp.conf**(5)](/pcp.conf/5.md).

## SEE ALSO

[**PCPIntro**(1)](/PCPIntro/1.md), [**kinit**(1)](/kinit/1.md) and [**pmcd**(1)](/pmcd/1.md).
