---
title: "Using <code class=\"cmdname\">dsconfig</code> batch mode"
description: Configure the server in dsconfig batch mode.
component: pingdirectory
version: 11.0
page_id: pingdirectory:pingdirectory_server_administration_guide:pd_ds_use_dsconfig_batch_mode
canonical_url: https://docs.pingidentity.com/pingdirectory/11.0/pingdirectory_server_administration_guide/pd_ds_use_dsconfig_batch_mode.html
revdate: July 18, 2024
section_ids:
  about-this-task: About this task
  steps: Steps
  example: Example:
---

# Using `dsconfig` batch mode

Configure the server in `dsconfig` batch mode.

## About this task

The PingDirectory server provides a `dsconfig` batching mechanism that reads multiple `dsconfig` invocations from a file and executes them sequentially.

The batch file provides advantages over standard scripting by minimizing LDAP connections and Java virtual machine (JVM) invocations that normally occur with each `dsconfig` call. Batch mode is the best method to use with setup scripts when moving from a development environment to test environment or from a test environment to a production environment. The `--no-prompt` option is required with `dsconfig` in batch mode.

If a `dsconfig` command has a missing or incorrect argument, the command fails and aborts the batch process without applying any changes to the server. The `dsconfig` command supports a `--batch-continue-on-error` option that instructs `dsconfig` to apply all changes and skip any errors.

You can view the `logs/config-audit.log` file to review the configuration changes made to the server and use them in the batch file. The batch file can have blank lines for spacing and lines starting with a pound sign (#) for comments. The batch file also supports a `\` line continuation character for long commands that require multiple lines.

The server also provides a `docs/sun-ds-compatibility.dsconfig` file for migrations from Oracle to PingDirectory server machines.

## Steps

1. Create a text file that lists each `dsconfig` command with the complete set of properties that you want to apply to the server.

   |   |                                                                                                                                                                                                                                                                                                                        |
   | - | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
   |   | The items in this file should be in the same format as those accepted by the `dsconfig` command.The batch file can have blank lines for spacing and lines starting with a pound sign (`#`) for comments.The batch file also supports a "\\" line continuation character for long commands that require multiple lines. |

   ### Example:

   ```
   # This  dsconfig  operation creates the exAccountNumber global attribute index.
   dsconfig create-global-attribute-index
   --processor-name ou_people_dc_example_dc_com-eb-req-processor
   --index-name exAccountNumber --set prime-index:true

   # Here we create the entry-count placement algorithm with the
   # default behavior of adding entries to the smallest backend
   # dataset first.

   dsconfig create-placement-algorithm
   --processor-name ou_people_dc_example_dc_com-eb-req-processor
   --algorithm-name example_com_entry_count
   --type entry-counter
   --set enabled:true
   --set "poll-interval:1 m"

   # Note that once the entry-count placement algorithm is created
   # and enabled, we can delete the round-robin algorithm.
   # Since an entry-balancing proxy must always have a placement
   # algorithm, we add a second algorithm and then delete the
   # original round-robin algorithm created during the setup
   # procedure.

   dsconfig delete-placement-algorithm
   --processor-name ou_people_dc_example_dc_com-eb-req-processor
   --algorithm-name round-robin
   ```

2. To read and execute the commands, run `dsconfig` with the `--batch-file` option.
