OS/DB Migration - CMD. STR, TOC, EXT, R3load, DDLDBS.TPL and more
With increasing need to improve performance or reduce costs or vanishing support for operating systems/databases it becomes inevitable to migrate to a better OS or DB. We feel take a quick look at the primary ingredients of the tools for OS/DB migration handled by R3SETUP.
The most crucial tool R3load is responsible for unloading and loading data from the database. R3load uses the files created by R3ldctl and R3szchk and dumps the data into compressed binary format as .001, .002 .. files. It uses cmd files to achieve the task. If the cmd files are not present, it creates on its own.
DB independent structure files *.STR are created by R3ldctl. Together, these files describe every table and index recognized in the SAP data dictionary. The TABART (class) and TABKAT (category) are read from the technical settings of the tables/indexes defined in DD09L.
DB dependent template files DDL<DBS>.TPL contain the database specific syntax which are used for creating tables and indexes. By carefully adjusting the template file, certain import steps can be made to run fast and certain potential errors can be avoided.
In case of Oracle database, DDLORA.TPL contains the mapping of tablespaces with the table classes (TABART) and table category to extent definitions.
Extent parameter files *.EXT contain the initial sizes of the tables/indexes. The default values of the initial extents are 16KB for Oracle database.
During export, the initial extent sizes of large tables are limited to 1.7 GB. This may be small and is very likely to pose a problem during import. Find all occurrence of 1782579200 in EXT files and increase them to a large value (say 10GB 10000*1024*1024 = 10485760000)
Data dump files *.001, *.002 etc are the binary data files created by R3load while unloading the data from the database. These files are highly compressed. As a rule of thumb, the total size of the dump files may be about 10% of the database. It may be smaller if the tables are highly fragmented (for example as a result of data archiving). The dump files should not be edited.
Content directory files *.TOC contain the number of rows, which portion of the dump file holds which table and the timestamp of unload. You should never edit TOC files.
DB size template DBSIZE.TPL contains how the datafiles are layed out accross the sapdata file systems. The source database may have had datafiles arrnaged in disorderly fashion. Editing DBSIZE.TPL before tablespace creation helps you control how big and where the datafiles are created.
You have to ensure that you are not exceeding the FS size and the summations at the bottom of the file match. You can use the following command to do the check for each SAPDATA
cat DBSIZE.TPL | awk -F"=" '{ print $2}' | sed 's/!/ /g' | xargs -n1 | grep @SAPDATA1@ | awk -F";" '{ print $2}' | awk '{s+=$1} END {print s}'
R3SETUP Control files *.R3S orchestrate the export and import process. DBEXPORT.R3S controls export and DBMIG.R3S controls the database (only) migration.
There is no practical need to edit DBEXPORT.R3S, but DBMIG.R3S may need editing to insert exit routines.
Insert a line in the [EXE] section. If you find some activities in the import phase that can be performed before export completes, you may wish to run them while export is in progress to reduce downtime. Before the data loading is started by R3load, you should exit the import program. This can be achieved by adding an exit routine before DBR3LOADEXECDUMMY_IND_IND step starts.
Search for DBR3LOADEXECDUMMY_IND_IND in the DBMIG.R3S file. Just before that line, add <previous line number + 5>=EXITSAPNWNEBWIE_IND_IND to exit before the R3load process begins.
Tools - R3load, R3ldctl and R3szchk
R3ldctl creates STRucture files, TemPLate files by reading the technical settings for table/indexes in SAP data dictionary. R3szchk calculates the database size object sizes (EXTent files) for the target system based on the STR files created by R3ldctl. The EXT and STR files can be later split into smaller groups.The most crucial tool R3load is responsible for unloading and loading data from the database. R3load uses the files created by R3ldctl and R3szchk and dumps the data into compressed binary format as .001, .002 .. files. It uses cmd files to achieve the task. If the cmd files are not present, it creates on its own.
Files
Command files*.cmd are created in the installation directory by R3load process if they are not already present. The command files contain path to database independent structure file (*.STR), database dependent template files (*.TPL), directory file (*.TOC) containing contents of dump files and directory containing data dump files.DB independent structure files *.STR are created by R3ldctl. Together, these files describe every table and index recognized in the SAP data dictionary. The TABART (class) and TABKAT (category) are read from the technical settings of the tables/indexes defined in DD09L.
DB dependent template files DDL<DBS>.TPL contain the database specific syntax which are used for creating tables and indexes. By carefully adjusting the template file, certain import steps can be made to run fast and certain potential errors can be avoided.
In case of Oracle database, DDLORA.TPL contains the mapping of tablespaces with the table classes (TABART) and table category to extent definitions.
Extent parameter files *.EXT contain the initial sizes of the tables/indexes. The default values of the initial extents are 16KB for Oracle database.
During export, the initial extent sizes of large tables are limited to 1.7 GB. This may be small and is very likely to pose a problem during import. Find all occurrence of 1782579200 in EXT files and increase them to a large value (say 10GB 10000*1024*1024 = 10485760000)
Data dump files *.001, *.002 etc are the binary data files created by R3load while unloading the data from the database. These files are highly compressed. As a rule of thumb, the total size of the dump files may be about 10% of the database. It may be smaller if the tables are highly fragmented (for example as a result of data archiving). The dump files should not be edited.
Content directory files *.TOC contain the number of rows, which portion of the dump file holds which table and the timestamp of unload. You should never edit TOC files.
DB size template DBSIZE.TPL contains how the datafiles are layed out accross the sapdata file systems. The source database may have had datafiles arrnaged in disorderly fashion. Editing DBSIZE.TPL before tablespace creation helps you control how big and where the datafiles are created.
You have to ensure that you are not exceeding the FS size and the summations at the bottom of the file match. You can use the following command to do the check for each SAPDATA
cat DBSIZE.TPL | awk -F"=" '{ print $2}' | sed 's/!/ /g' | xargs -n1 | grep @SAPDATA1@ | awk -F";" '{ print $2}' | awk '{s+=$1} END {print s}'
R3SETUP Control files *.R3S orchestrate the export and import process. DBEXPORT.R3S controls export and DBMIG.R3S controls the database (only) migration.
There is no practical need to edit DBEXPORT.R3S, but DBMIG.R3S may need editing to insert exit routines.
Insert a line in the [EXE] section. If you find some activities in the import phase that can be performed before export completes, you may wish to run them while export is in progress to reduce downtime. Before the data loading is started by R3load, you should exit the import program. This can be achieved by adding an exit routine before DBR3LOADEXECDUMMY_IND_IND step starts.
Search for DBR3LOADEXECDUMMY_IND_IND in the DBMIG.R3S file. Just before that line, add <previous line number + 5>=EXITSAPNWNEBWIE_IND_IND to exit before the R3load process begins.
By adding the line you have specified another step to be executed by R3SETUP, but the definition of that step is not added yet.
Note that the steps in R3S file [EXAMPLELABEL_OS_DB] are sorted in alphabetical order. Therefore the new exit section should follow the alphabetical sequence.
EXITSAPNWNEWBIE... section is alphabetically ordered between EXITORA.. and EXITSTARTR3...
Comments
Post a Comment