Considerations:
- If the db hostname or port is changing the clients using TCP/IP parameters ( -H and -S ) will have to be modified.
- The process of getting the files to the new machine might take a very long via a network transfer or even worse the internet if the database files are large. Consider the alternative of using a physical media to transfer the files from one geographical location to another.
Progress has no dedicated utility for changing the whole database location, but the methods for doing this are:
1. Restore a backup into the new location, using probkup/prorest.
- First create the new structure using prostrct create, then restore into this.
- A full back-up followed by subsequent incremental backups can also be used.
2. Dump and load into the new location.
- First create the new empty database in the new location, then load into this.
If the database hasn't been dumped and loaded for a while, then this might be a good opportunity to carry out this maintenance on it.
This option is the only supported method to move a database between different Operating Systems platforms.
3. Create a new target database in the new location and use procopy to copy the database into this.
- Optionally, create a new structure file and use that to create new void database using prostrct create
- Run command procopy <source> <target>
(If no new database structure was created for the target, procopy will automatically create one identical to the source database, but with all extent files in the same location)
The target drive needs to be accessible by the machine containing the original database
4. Use OpenEdge replication to keep the target synced.The advantage is that as data gets modified on the source the target will be in sync.
Once the migration date arrives the target can be made into a stand alone database as it will be up-to-date.
5. Use Pro2 for a more granular migration(specific tables or fields) or if migrating to a foreign database.https://www.progress.com/openedge/features/openedge-pro2