Overview of Migration
This chapter includes an overview of the major steps required to migrate a version 7 or version 6 database to Oracle8i. These migration procedures transform an existing version 7 or version 6 database system (including associated applications) into an Oracle8i database system. Oracle8i is compatible with all earlier Oracle versions and releases. Therefore, databases transformed using the migration procedures described in this book can work in the same manner as in earlier versions and, optionally, can leverage new Oracle8i functionality.
Several preparatory steps are required before you migrate the current production database. After migrating the database, you should perform several additional test steps to test the migration. Other procedures enable you to add new Oracle8i functionality to existing applications.
This chapter covers the following topics:
Overview of Migration Steps
Before you perform a database migration, you should understand the major steps in the migration process. These major steps apply to all operating systems, with the possible exception of a few operating system-specific details identified in your operating system-specific Oracle documentation.
The rest of this chapter describes migration. If you plan to perform an operation other than migration, such as upgrading or downgrading, then you can proceed to the appropriate chapter for the operation.
Figure 2-1 Major Migration Steps
Careful planning and use of Oracle8i tools can ease the process of migrating a database to Oracle8i. You can use one of the following migration methods to migrate your database:
- The Oracle Data Migration Assistant is the easiest way to migrate an entire database
- Migration utility is more complicated to use but provides more control over the process of migrating an entire database.
- Export/Import and SQL copy utilities enable piecemeal migration of parts of a database.
The following sections contain a brief outline of the major steps shown in Figure 2-1. The purpose of these descriptions is to familiarize you with the major steps in the migration process. For detailed instructions, refer to the appropriate chapters and sections later in this book.
Step 1: Prepare to Migrate
- Become familiar with the features of the Oracle8i database. See Getting to Know Oracle8i for an overview of these features.
- Decide which migration method to use, based on considerations involving the current production database, your migration objectives, and the behavior and capabilities of available migration methodologies.
- Estimate and secure the system resources required for the migration.
- Develop a plan for testing the migration with an Oracle8i test database and a plan for testing the migrated Oracle8i production database.
- Prepare a backup strategy so that you can recover quickly from any unexpected problems or delays.
Step 2: Test the Migration Process
- Perform a test migration using a test database. The test migration should be conducted in an environment created for migration testing and should not interfere with the actual production database.
Step 3: Test the Migrated Test Database
- Perform the tests you planned in Step 1 on the version 7 or version 6 test database and on the version 7 or version 6 test database that was migrated to Oracle8i.
- Compare results, noting anomalies between test results on the version 7 or version 6 test database and on the migrated Oracle8i database.
- Investigate ways to correct any anomalies you find and then implement the corrections.
- Repeat Step 1, Step 2, and the first parts of Step 3, as necessary, until the test migration is completely successful and works with any required applications.
Chapter 3, "Preparing to Migrate", provides detailed information about Steps 1 through 3.
Step 4: Prepare and Preserve the Source Database
- Prepare the current production database as appropriate to ensure that its migration to Oracle8i will be successful.
- Schedule the downtime required for backing up and migrating the version 7 or version 6 production database to Oracle8i.
- Perform a full backup of the current production database. This step is required only if either the Oracle Data Migration Assistant or the Migration utility is used for the migration.
Step 5: Migrate the Production Database
- Migrate the version 7 or version 6 production database to Oracle8i.
- After the migration, perform a full backup of the production database and other post-migration tasks.
Chapter 4 describes Steps 4 and 5 using the Migration utility; Chapter 5 describes Steps 4 and 5 using the Oracle Data Migration Assistant; and Chapter 6 describes Steps 4 and 5 using the Export/Import utilities. Chapter 8 describes the backup procedure after the migration and other post-migration tasks.
Step 6: Tune and Adjust the New Production Database
- Tune the new Oracle8i production database. The Oracle8i production database should perform as good as, or better than, the Oracle database prior to migration. Chapter 8 describes these tuning adjustments.
- Determine which new features of the Oracle8i database that you want to use and update your applications accordingly.
- Develop new database administration procedures as needed.
- Do not migrate production users to the Oracle8i database until all applications have been tested and operate properly. Chapter 10 describes considerations for updating applications.
During migration, multi-versioning can be a useful feature because you can keep multiple copies of the same database on one computer system. You can use the existing version as your production environment while you test the new version.
Role of the Database Administrator During Migration
Typically, the database administrator (DBA) is responsible for ensuring the success of the migration process. The DBA is usually involved in each step of the process, except for steps that involve testing applications on the migrated database.
The specific DBA duties typically include the following:
- meeting with everyone involved in the migration process and clearly defining their roles during migration
- performing test migrations
- scheduling the test and production migration process
- performing backups of the version 7 or version 6 production database
- completing the production database migration
- performing backups of the newly migrated Oracle8i production database
Role of the Application Developer During Migration
The application developer is responsible for ensuring that applications designed for the version 7 or version 6 database work correctly with the migrated Oracle8i database. Application developers often test applications against the migrated Oracle8i database and decide which new features of Oracle8i should be used.
Before migrating the Oracle7 production database, the DBA or application developer should install an Oracle8i test database. Then, the application developer can test and modify the applications, if necessary, until they work with their original (or enhanced Oracle8i) functionality.
The following references provide information about identifying differences in the migrated Oracle8i database that could affect particular applications. Application developers can use these differences to guide modifications to existing applications.
- Chapter 9, "Compatibility and Interoperability" describes compatibility and interoperability issues that may result because of differences in releases of Oracle.
- Chapter 10, "Upgrading Your Applications" describes the changes required to enable existing applications (that access an Oracle7 database) to access an Oracle8i database and provides guidance for upgrading Oracle7 applications to take advantage of Oracle8i functionality.
- Appendix B, "Changes to Initialization Parameters" lists new, renamed, and obsolete initialization parameters in version 8.
- Appendix C, "Changes to Static Data Dictionary Views" lists new, changed, and obsolete static data dictionary views in version 8.
- Appendix D, "Changes to Dynamic Performance Views" lists new, changed, and obsolete dynamic performance views (V$ views) in version 8.
- Appendix E, "New Internal Datatypes and SQL Functions" lists new internal datatypes and SQL functions added in version 8.
- Appendix F, "SQL*Net and Net8 Considerations for Migrations and Upgrades" provides instructions for migrating and upgrading SQL*Net and Net8.
- Appendix G, "Migration and Compatibility for Replication Environments" provides instructions for a database system that has Oracle replication installed.
- Getting to Know Oracle8i describes the new features available in Oracle8i.
- Oracle8i Parallel Server Documentation Set: Oracle8i Parallel Server Concepts; Oracle8i Parallel Server Setup and Configuration Guide; Oracle8i Parallel Server Administration, Deployment, and Performance and Oracle8i SQL Reference contain descriptions of changes and new Oracle8i functionality.
- Oracle8i Application Developer's Guide - Fundamentals, Oracle8i Application Developer's Guide - Large Objects (LOBs), and Oracle8i Application Developer's Guide - Advanced Queuing provide information about planning and implementing applications.
Oracle8i includes features that aid in upgrading existing applications to Oracle8i, for example:
- Net8 and SQL*Net V2 support communication between Oracle versions.
- The programming interface is unchanged between Oracle versions.
- Oracle's backward compatibility accommodates small incompatibilities between different versions and releases.