Importing data
After installing the database, such as userRoot, import data into the database.
Steps
-
To add a server to a replicating set:
-
Perform a
dsreplication enable
operation. -
Import the database through the
dsreplication initialize
operation.
-
-
To add a server to a non-replicating set or to add the first server of a future replicating set, import the data with the
bin/import-ldif
tool.For more information about the
bin/import-ldif
tool, see Importing and exporting data.
Generating sample data
The PingDirectory server provides LDIF templates to generate sample entries for initializing your server. You can generate the sample data with the make-ldif
utility together with template files that come bundled with the .zip
build, or you can use template files that you create yourself.
About this task
The templates create sequential entries for testing the PingDirectory server with a range of dataset sizes. The templates are located in config/MakeLDIF
.
The sample data templates generate a dataset with basic access control privileges that grants anonymous read access to anyone, grants users the ability to modify their own accounts, and grants the admin account full privileges. The templates also include the uid=admin and ou=People
entries.
Steps
-
To generate randomized sample data, use the
--randomSeed
option with themake-ldif
command.Example:
$ bin/make-ldif --templateFile config/MakeLDIF/example-10k.template \ --ldifFile /path/to/data.ldif --randomSeed 0
If the
--randomSeed
option is used with the same seed value, the template always generates the same.ldif
file.Result:
The command generates 10,000 sample entries and writes them to an output file,
data.ldif
. The random seed generator is set to 0. -
To bypass the
make-ldif
command, use the--templateFile
option with theimport-ldif
tool.
Importing data on the PingDirectory server using offline import
Steps
-
Create a
.ldif
file that contains entries or locate an existing file.Theimport-ldif
tool requires a.ldif
file, which conforms to standard LDIF syntax without change records. ThechangeType
attribute is not allowed in the input LDIF. For information on adding entries to the PingDirectory server, see Managing Entries. -
Stop the PingDirectory server.
-
To import data from an LDIF file to the PingDirectory server, use the
import-ldif
command.For assistance with the list of options, run
import-ldif --help
.In the following example, the data is imported from the
data.ldif
file to theuserRoot
backend. Entries rejected because of schema violation are written with the rejection reason to therejects.ldif
file. Skipped entries, written toskipped.ldif
, occur if an entry cannot be placed under a branch node in the directory information tree (DIT) or if exclusion filters, such as--excludeBranch
,--excludeAttribute
, or--excludeFilter
are used. The--overwrite
option instructsimport-ldif
to overwrite existing skipped and rejected files. The--overwriteExistingEntries
option indicates that any existing data in the backend should be overwritten, and the--stripTrailingSpaces
option strips trailing spaces on attributes that would otherwise result in an LDIF parsing error.Example:
$ bin/import-ldif --backendID userRoot --ldifFile /path/to/data.ldif --rejectFile rejects.ldif --skipFile skipped.ldif --overwrite --overwriteExistingEntries --stripTrailingSpaces
-
Restart the PingDirectory server.