dirxload
Synopsis
dirxload
{-f LDIF_file_list | -F LDIF_file_list_file}
[-A [-a db_configuration_file]] [-c] [-n] [-r] [-s]
[-S LDIF_schema-file] [-t temp_dir] [-v[-I interval]] [-X] |
-h |
-V
Options
-f LDIF_file_list
-
Specifies a comma-separated list of LDIF content files. Specify the full pathname or the relative pathname of the LDIF content files. The list is processed from left to right.
-F LDIF_file_list_file
-
Specifies a file that contains a list of LDIF content files. Specify one full pathname or one relative pathname of the LDIF content files per line. The file is processed from the top of the file downwards.
-A
-
Directs dirxload to perform attribute index configuration as specified in the subentry with the DN CN=DB-Configuration-Subentry in the first LDIF content file.
-a db_configuration_file
-
Directs dirxload to apply attribute index configuration as specified in the external database configuration file db_configuration_file. This option can only be used with the -A option.
-c
-
Directs dirxload to ignore up to one thousand non-fatal errors during the load operation.
-n
-
Runs dirxload in "simulation" mode: the command processes the LDIF content file(s) but does not create the entries in the DirX Directory database.
-r
-
Directs dirxload to save each rejected LDIF entry in a file. (See Description section below for details.)
-s
-
Directs dirxload to omit all shadow related entries and attributes. (See Description section below for details.)
-S LDIF_schema_file
-
Directs dirxload to apply the schema as specified in the cn=schema entry in the LDIF_schema_file. It ignores any schema definitions in the LDIF data files specified with switch -f or -F. (See the Description section for details.)
-t temp_dir
-
Specifies the directory that dirxload is to use to store temporary files. This directory must exist. If this option is not specified, dirxload uses the directory install_path/tmp.
-v[-I interval]
-
Displays progress and performance information during the load operation at each interval of loaded entries. If the -I option is not specified, dirxload displays progress information after each load of 100,000 entries.
-X
-
Directs dirxload not to perform checking the password policy during the load operation. It is recommended to turn off checking the password policy to improve load performance and to avoid errors resulting from violating the password policy specified.
-h
-
Prints a command usage message.
-V
-
Displays the DirX Directory product version, in the format:
product_version build_id date time
For example:
DirX Directory V9.0 9.4.428 2023:03:23 20:10 64-Bit
Description
The dirxload command can load one or more large LDIF content files into the DirX Directory database. The LDIF files can contain an unlimited number of entries. You must ensure that the LDIF files are in UTF-8 format.
Before you can use dirxload, you must:
-
Provide disk space for the database(s).
-
Create the profile(s) with dbamconfig.
-
Initialize the database(s) with dbamboot.
-
Extend the DSA schema to include any object classes and attribute types not defined in the standard DSA schema. Then update the database configuration using dirxadm db attrconfig if additional attributes should be indexed. You can check which attributes are indexed by performing a dirxadm db show operation. Alternatively, you can specify the -A option to direct the dirxload command to configure attribute indexes.
-
Stop the DirX Directory service with dirxadm sys stop or with the Administration Tool Services on Windows.
When you use the dirxload command to update an existing database and / or perform attribute indexing during the load operation, you must stop the DSA first. Save your database before you start the dirxload command.
The dirxload command uses the profile names that were specified when performing the dbamboot command.
The schema must correspond to the entries that are contained in the LDIF files. The first LDIF file must contain schema modifications at the beginning of the file. Any other cn=*schema entries in the other LDIF data files are ignored. Use the *-S option to specify a separate LDIF file with schema information in the entry cn=*schema. If *-S is specified, the schema entry in the first LDIF file is ignored. Alternatively, the administrator can modify the schema before loading the LDIF files. DirX Directory Manager, for example, provides easy and convenient-to-use features for schema management and schema synchronization.
The dirxload command can load entries of DSE type ENTRY and subentries with the subEntry object class. If you are planning to load entries that are not immediately below the DSE root, you must first create the superior DSEs - for example, with dirxcp - if they are not part of the LDIF files.
By default, dirxload applies the attribute index configuration as specified in the database. (You can use the dirxadm db attconfig operation to administer the attribute indexes.) Use the -A option to direct dirxload to configure the attribute indexes as specified in the subentry with the DN CN=DB-Configuration-Subentry. Make sure that this subentry is located at the beginning of the first LDIF content file close to the position after the schema subentry. If dirxload does not find this entry at this location, it does not perform attribute index configuration. If you used the
dirxadm ldif_dump operation to create the LDIF file, the location of the DB configuration subentry is always correct and its contents reflects the database configuration at the time of the dump. If the settings in the subentry do not meet the required attribute index configuration, you can modify the configuration in the LDIF content file directly.
Alternatively, you can specify a separate configuration file with the -a option. You can use the dirxadm export_dbconfig operation to generate a correctly formatted configuration file. (See the dirxadm export_dbconfig operation for details.) You can also provide an LDIF content file which includes only the subentry CN=DB-Configuration-Subentry with the appropriate settings. If the -a option is specified, the settings of the subentry CN=DB-Configuration-Subentry in the first LDIF content file are ignored.
When changing the attribute index configuration, the rules for the dirxadm db attrconfig operation apply with the following exceptions. (See the dirxadm db attrconfig reference page for details.):
-
Only the following index keywords are supported: INITIAL, NO-INITIAL, FINAL, NO-FINAL, CONTAINS, NO-CONTAINS, PRESENT, NO-PRESENT, APPROXIMATE, NO-APPROXIMATE, UNIQUE, NO-UNIQUE.
-
The PRESENT keyword is a synonym for the ANY keyword.
-
Specifying the Any keyword is prohibited.
-
A missing index-type keyword results in deleting the index-type.
-
If an attribute type is not specified in the attribute index configuration, its attribute index settings remain unchanged as configured in the database.
dirxload performs the following steps to create the attribute indexes during the load operation:
-
It stores the values of each indexed attribute in a file named unique_attribute_number*-pid.iaf* in a temporary directory (see the -t option).
-
It creates the attribute indexes from the intermediate attribute index files. Once the indexing operation completes successfully, dirxload deletes these files from the temporary directory. If the indexing operation encounters errors, dirxload preserves these files.
The size of each intermediate attribute index file depends on the content of the LDIF file(s) being loaded.
By default, dirxload stops the load operation whenever it encounters errors. Use the -c option to allow dirxload to continue with the load operation when it encounters non-fatal errors.
If an error occurs that causes dirxload to exit, you must delete all files named unique_attribute_number*-pid.iaf* in a temporary directory (see the -t option). You must restore your backup. After correcting the error(s) you must re-issue the dirxload command (the command has no automatic error recovery function).
By default, dirxload does not save the LDIF entries that it rejects during the load operation. Use the -r option to override this default. When you specify this option, dirxload saves each entry it rejects in a file named rejected*pid.ldif*, where pid is the process ID of the dirxload executable. These files are written to the same directory as the DSA log files; by default, this directory is install_path*/server/log*. Each reject file contains a comment line that identifies the reason for the rejection.
Use the -s option to build a stand-alone DSA from the LDIF file: the Cooperating-DSAs-Subentry is omitted and all shadow-related knowledge attributes like supplierKnowledge and consumerKnowledge are omitted from all entries.
Use the -n option to check whether dirxload can successfully process the target LDIF content files.
Use the -v option to cause dirxload to write statistical information to standard output.
Use the -l option to control the interval at which the command generates the statistical information during its operation.
The dirxload command writes log information into the tools log directory; by default, this directory is install_path/tools/log. The command’s logging function is controlled by the specifications contained in the file install_path/tools/conf/dirxlog.cfg.