---
title: Getting started with the PingDirectory server
description: Learn how to get started after installing PingDirectory.
component: pingdirectory
version: 11.0
page_id: pingdirectory:pingdirectory_server_administration_guide:pd_ds_get_started
canonical_url: https://docs.pingidentity.com/pingdirectory/11.0/pingdirectory_server_administration_guide/pd_ds_get_started.html
revdate: April 26, 2024
section_ids:
  configure-the-server: Configure the server
  server-configuration-details: Server configuration details
  import-user-data: Import user data
  test-operational-performance: Test operational performance
  before-you-begin: Before you begin
  authrate: authrate
  modrate: modrate
  searchrate: searchrate
  improve-performance: Improve performance
  install-delegated-admin-optional: Install Delegated Admin (optional)
---

# Getting started with the PingDirectory server

After setting up your PingDirectory server instance, you can configure additional server settings, import your user database, and run initial performance tests to optimize the server's throughput.

## Configure the server

You can configure the PingDirectory server using the `dsconfig` command-line tool or the admin console. With `dsconfig`, you can also apply configuration changes in a batch file.

[icon: terminal, set=fas, size=3x]

#### [dsconfig](pd_ds_dsconfig_config_tool.html)

Learn to use the `dsconfig` tool.

[icon: file-code, set=fas, size=3x]

#### [Batch mode](pd_ds_use_dsconfig_batch_mode.html)

Learn to use `dsconfig` batch mode.

[icon: window-maximize, set=fas, size=3x]

#### [Admin console](pd_ds_using_the_console.html)

Learn to use the admin console.

### Server configuration details

* The batch file defines the `dsconfig` commands necessary for configuring your server instance.

* The host name and HTTPS port you set during installation determine the deployment URL for the admin console.

  For example, given a host name of server1 and an HTTPS port of 1443, you would access the admin console at https\://server1.com:1443/console. You can also find the admin console URL by running `bin/status`.

* If you're migrating from a Sun Java System directory server (version 5.x - 7.x), you can use the `bin/migrate-sun-ds-config` command to migrate your configuration settings to this new server instance.

## Import user data

Import your user data using the `import-ldif` tool, as shown in the following example:

```shell
$ bin/import-ldif --backendID userRoot --ldifFile ../user-data.ldif
```

The import serves as an initial test of the schema settings. Learn more about [Importing data](pd_ds_importing_data.html) and [Managing the schema](pd_ds_manage_schema.html).

## Test operational performance

The PingDirectory server provides three tools for operational performance testing using built-in LDAP clients that access the server directly.

|   |                                                                                                                                                                                                                                             |
| - | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|   | Running these utilities on the server that's hosting the directory being tested impacts performance results. In general, increasing the thread count improves throughput, but higher thread counts have diminishing returns on performance. |

### Before you begin

You need a sufficient number of entries in your server to run these performance tests. For example, the following commands assume you have at least 2000 user entries.

If you want to populate the server with sample data for testing, learn more in [Generating sample data](pd_ds_importing_data.html#generating-sample-data).

### `authrate`

Use [**authrate**](https://developer.pingidentity.com/reference/pingdirectory/10.3.0.0/cli/authrate.html) to test the server's performance for authentication operations. The following command issues a search request to find a user and then a bind request to authenticate that user:

```shell
$ bin/authrate --hostname <server-name> --port <ldap-port> \
  --baseDN "dc=example,dc=com" --scope sub \
  --filter "(uid=user.[0-1999])" --credentials password \
  --numThreads 10 --numIntervals 20
```

|   |                                                                                                                                                                                                              |
| - | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|   | In the previous command, `numThreads` represents the number of connections available to the `authrate` utility. Try different values for `numThreads` to learn how the connection count impacts performance. |

### `modrate`

Use [**modrate**](https://developer.pingidentity.com/reference/pingdirectory/10.3.0.0/cli/modrate.html) to test the server's performance for modify and write operations. For example:

```shell
$ bin/modrate --hostname <server-name> --port <ldap-port> \
  --entryDN "uid=user.[0-1999],ou=People,dc=example,dc=com" \
  --attribute description --valueLength 12 --numThreads 10 --numIntervals 20
```

### `searchrate`

Use [**searchrate**](https://developer.pingidentity.com/reference/pingdirectory/10.3.0.0/cli/searchrate.html) to test the server's performance for search operations.

For example:

```shell
$ bin/searchrate --hostname <server-name> --port <ldap-port> \
  --baseDN "dc=example,dc=com" --scope sub \
  --filter "(uid=user.[0-1999])" --attribute givenName --attribute sn \
  --attribute mail --numThreads 10 --numIntervals 20
```

### Improve performance

To improve the performance of server operations, consider the following strategies:

[icon: database, set=fas, size=3x]

#### [Preload the database.](pd_ds_database_preloading.html)

Prime the server with backend data.

[icon: line-chart, set=fas, size=3x]

#### [Tune the indexes.](pd_ds_tune_indexes.html)

Tune the existing indexes for your environment.

[icon: search-plus, set=fas, size=3x]

#### [Create new indexes.](pd_ds_general_tips_on_indexes.html)

Create new indexes for common operations.

## Install Delegated Admin (optional)

Install a JavaScript-based web application for business users to manage identities stored in the PingDirectory server. Learn more in [Installing Delegated Admin](../installing_the_pingdirectory_suite_of_products/pd_da_install_delegated_admin.html) and the [Delegated Admin application guide](../delegated_admin_application_guide/pd_da_admin_guide.html).

The Delegated Admin application provides delegated administration of identities in the following scenarios:

* A help desk or customer service representative needs to initiate a password reset and unlock an account.

* An employee in HR needs to update an address stored within another employee profile.

* An application administrator needs to update identity attributes or group membership to allow single sign-on (SSO) *(tooltip: \<div class="paragraph">
  \<p>The process of authenticating an identity (signing on) at one website (usually with a user ID and password) and then accessing resources secured by other domains without reauthenticating.\</p>
  \</div>)* access.
