Académique Documents
Professionnel Documents
Culture Documents
When we first install a new ABAP system, one of the parameters required is the name of the transport
host. The installation tool defaults to the host on which we are installing, and if this is the first system in the
landscape, this is often the choice we make. As frequently the first system installed is the development, or
DEV, system, it's very common for DEV to become the central transport host as well as the transport domain
controller (setup almost immediately after installation when we first configure STMS, and not to be confused
with a Windows Active Directory domain controller).
This is all well and good, but fast forward a few (or maybe quite a few) years, and inevitably the day arrives
when we would like to migrate our systems onto shiny new hardware. The System Copy guide documents the
process of moving our ABAP system quite well, but it doesn't go into much (or any) detail about moving our
Transport Domain Controller, nor does it talk about moving our transport host.
The example below assumes a Windows host, but the procedure should be easily adaptable to other operating
systems.
Either way, I recommend migrating the transport host before migrating the DEV system (or whichever system
in the domain we are migrating first). This will simplify things later, as then we generally only need specify the
hostname of the new transport host during installation with SWPM of each new target system.
Parameter Priority
DIR_TRANS is the parameter that STMS will use to find the transport folders. If both SAPTRANSHOST and
DIR_TRANS are set in a profile, DIR_TRANS will take precedence in determination. If DIR_TRANS is not
explicitly set, then the system will substitute standard values to calculate it as \\<SAPTRANSHOST>\sapmnt
\trans.
Therefore, if we eliminate DIR_TRANS from all profiles, determination rests only upon a correct setting of
SAPTRANSHOST. This becomes the key to simplifying our migration.
STMS is going to look first for DIR_TRANS to be explicitly set. If it doesn't find it, it will substitute as mentioned
above using the value of SAPTRANSHOST. It will look first for SAPTRANSHOST in the local system's
Instance Profile, and if not found there, then in the Default Profile. If it doesn't find it in any profile, it will look
for it as an environment variable (for the user SAPService<SID> or <sid>adm) or via the operating system's
hostname resolution.
SAPTRANSHOST
SAPTRANSHOST may be set as a parameter in the instance profile, the default profile, or as an alias
in the hosts file or DNS. At various times installation programs and documentation have defaulted to or
recommended different approaches.
DNS
If we have only a single transport domain, and we have ready access to manipulate our DNS (Domain Name
System) server, then setting an 'alias' record in DNS for SAPTRANSHOST to point to the IP address of the
central transport host may be the easiest option. This is a task usually managed by network operations staff
and not SAP system administration staff, so we won't go into the procedure here. Also, for that reason, it may
be simpler to not rely upon DNS for this parameter.
The other complication associated with setting SAPTRANSHOST in DNS is that we may have more than one
transport domain, and possibly also more than one central transport host. This could be the case, for instance,
if we have one transport domain for our ECC landscape, and another domain for our SRM landscape, and
perhaps another for BW, etc.
Finally, a DNS alias ends up as the lowest priority for determination, as it will be overridden by any of the other
methods that could be used.
HOSTS
An alternative to DNS is to maintain the alias in the local hosts file. This was very common with early ABAP
(i.e. R/3) systems, so we must definitely check for this and correct it (or potentially eliminate it).
The hosts file is a repository of IP addresses and hostnames maintained in the local server's filesystem. This is
a mechanism for name resolution that predates DNS. In the event of an entry in the hosts file that conflicts with
an entry in DNS, the hosts entry will take priority (but only for name resolutions on the local host).
The file is located at C:\Windows\system32\drivers\etc\hosts. It is a simple ASCII text file that can be edited
with Notepad.
Look for entries similar to:
192.168.0.1
hostname.domain.com
SAPTRANSHOST
Obviously, the IP address will likely be different. Here, we have two options. We can edit the line so that the IP
address and hostname match our new central transport host, or we can simply delete the line (assuming we
have a working DNS system so that the actual hostname will be resolved correctly, but this is usually the case).
If we don't find such a line, we can insert a new one with the correct information, or we can ignore it and leave
it alone. After all, there is another option.
Default Profile
The next place to look is for the SAPTRANSHOST parameter to be set in either the Default or Instance Profile.
If it is set as a DNS or HOSTS alias, then it may not be set in the profiles at all. Ideally it should only be set in
one place or the other, not both. Currently, SWPM will configure this as a parameter in the Default Profile on
installation, so this is the practice I recommend.
It should be set in only one place, so we are going to eliminate any SAPTRANSHOST alias from the hosts file
and any parameter for this (or DIR_TRANS) in the Instance Profile, and ensure it is set correctly in the Default
Profile.
Environment Variable
There is one other possible place where a misconfigured SAPTRANSHOST variable could cause us grief. It is
rare, but we might find it set as an environment variable for the <sid>adm user. If so, we should eliminate it and
rely instead on the Default Profile. This will be much easier to manage going forward.
Restart
Unfortunately, changing this parameter in the system profiles, or for that matter in the hosts file, requires a
restart of the application to take effect. In the case of a change in the hosts file, it also requires a restart of
the SAP service (which is a good idea generally, anyway, when restarting the system for profile parameter
changes, as some parameters require this as well).
Yes, this means there will be a brief production downtime to get this into effect, so plan ahead.
TP at the OS Level
One possible advantage to setting SAPTRANSHOST as a DNS alias or environment variable could have
been for use with the tp command when used outside the ABAP system from the server console's command
prompt. It is rare these days to use tp instead of STMS, but there are occasions that call for it. The proper way
to handle this, however, is to set TRANSDIR in the transport domain profile. This is done via STMS.
Logon to the transport domain controller (possibly the DEV system), and go into transaction STMS. Select
System Overview, then double-click on the system that is the Controller (there is a small icon next to the
System ID for the primary and backup controllers; hover over them with the mouse to see a pop-up text
identifying them).
Select the Transport Tool tab. There we should see a parameter called TRANSDIR. If it is not correctly set,
change to edit mode and correct it.
It should have the Global flag checked, and the value should be \\<central_transport_host>\sapmnt\trans.
Save changes and select Yes to distribute changes immediately.