Overview

The Advanced Database & Application Migration (ADAM) agent for data collection consists of a source database schema collection module and a source database data packaging module.

  • Source database schema collection module: collects basic information of source databases, including schema, SQL statements, stored procedures, transactions, and triggers.
  • Source database data packaging module: exports and saves data to the disk. Collected data is compressed into ZIP packages.

ADAM also provides security measures such as data masking and load control to protect database resources during collection.

Download the ADAM agent

  1. Log on to the ADAM console. In the left-side navigation pane, choose Database Migration > Database Evaluation to go to the Database Evaluation page.
  2. The Database Collection step introduces the database collector. Click Download Collector to go to the details page of the database collector.
  3. Check the operating environment of the machine on which you want to install the ADAM agent.
  4. The ADAM agent must be able to access Oracle databases over the current network.
  5. The machine to install the ADAM agent must have at least a 2-core CPU, 8 GB memory, and available disk capacity of at least 100 GB. We recommend that you do not run the ADAM agent on the same machine that the target database is located.
  6. Check the operating system of the machine on which you want to install the ADAM agent.

Download and decompress the ADAM agent package of the appropriate version based on your operating system.

Collect data

The ADAM database collector consumes so few memory resources that you can neglect the memory consumption. The collector uses certain CPU resources and slightly increases the CPU usage only at the beginning of the collection. The increase depends on the size of the Oracle database and current workloads. It is recommended that you perform the colection during off-peak hours, during which the collection usually completes quickly.

The collector allows you to collect data from existing Oracle databases such as Oracle 10g, 11g, and 12c databases. If you have any questions about collecting database data, submit a ticket that includes the log files of a directory on the same level as the collector directory.

  • Log on to the source Oracle database. Create an account for data collection and grant permissions to the account.
  • Create a temporary account by using an account that has the SYSDBA system privilege and configure the following permissions. If you already have an account that has the following permissions, skip this step. Note that the following permissions are used to access the Oracle database system, collect relevant information, as well as mask and export the collected data.

    --Create a user named eoa_user and set the password to eoaPASSW0RD:

    create user eoa_user identified by "eoaPASSW0RD" default tablespace users.

    --Query permissions:

    grant connect,resource,select_catalog_role,select any dictionary to eoa_user.

    --DBMS_LOGMNR permission (Oracle 10g databases must execute the following statement first:

    CREATE OR REPLACE PUBLIC SYNONYM dbms_logmnr FOR sys.dbms_logmnr): grant execute on DBMS_LOGMNR to eoa_user.

    --DBMS_METADATA permission to query DDL statements of database objects:

    grant execute on dbms_metadata to eoa_user.

    --Permissions to query transactions:

    grant select any transaction to eoa_user.

    --Permissions to analyze tables:

    grant analyze any to eoa_user.

    --Permissions to generate random numbers:

    grant execute on dbms_random to eoa_user.

    - Oracle 12c (Connect to an Oracle 12c container database (CDB) to create a common user)
    create user c##eoa_user identified by "eoaPASSW0RD" default tablespace users;
    grant connect,resource,select_catalog_role,select any dictionary to c##eoa_user container=all; 
    grant execute on DBMS_LOGMNR to c##eoa_user container=all;
    grant execute on dbms_metadata to c##eoa_user container=all
    grant select any table to c##eoa_user container=all;
    grant select any transaction to c##eoa_user container=all;
    grant analyze any to c##eoa_user container=all;
    grant execute on dbms_random to c##eoa_user container=all;
    alter user c##eoa_user set container_data=all container=current;
    			
  • Collect data (terminal version).

    Collect structured data to generate feasibility reports and compatibility reports

    1)Run the following command to collect data. The .bat command is used in Windows and the .sh command is used in Linux.

    2)Oracle 10g or 11g.

    collect_10g[.sh|.bat] -h <host> -u <username> -p <password> -d <service_name>

    or collect_11g[.sh|.bat] -h <host> -u <username> -p <password> -d <service_name>

    - -h: specifies the IP address of the Oracle database.      
    - -u: specifies the user as eoa_user.       
    - -p: specifies the password as eoaPASSW0RD.       
    - -P: specifies the port of the Oracle database. Example: 1521.      
    - -d: specifies the service name of the Oracle database.       

    3)Oracle 12c

    collect_12c[.sh|.bat] -h <host> -u <username> -p <password> -P <port> -d <service_name> -s <sid>

    - -h: specifies the IP address of the Oracle database.      
    - -u: specifies the user as eoa_user.       
    - -p: specifies the password as eoaPASSW0RD.       
    - -P: specifies the port of the Oracle database. Default: 1521.      
    - -d: specifies the service name of the Oracle database. 12c is the service name for a specific pluggable database (PDB).       
    - -s: specifies the name of the Oracle database instance. This option is required only for Oracle 12c.
  • Export the collection results. After the collection is complete, the system will prompt you that a data package has been generated, and will display the path of the package.The log file is as follows:
[2020-06-01 11:36:18] *****************************************************************************
[2020-06-01 11:36:18] *                            Collect Successfully!
[2020-06-01 11:36:18] *                            
[2020-06-01 11:36:18] * Complete the file packaging, the package result path is: 
[2020-06-01 11:36:18] *     ~/rainmeter/out/data.zip
[2020-06-01 11:36:18] * Next Step: go to [https://adam.console.aliyun.com/] to analyze the data!
[2020-06-01 11:36:18] *****************************************************************************
  • After the migration is complete, clear the temporary account.

Use an account that has the SYSDBA system privilege to access the database through a terminal and execute the following SQL statement:

drop user eoa_user cascade;
- Oracle 12c (CDB)
drop user c##eoa_user cascade;

Upload the collected data and create a profile

1.Log on to the ADAM console.

2.In the left-side navigation pane, choose Database Migration > Database Evaluation. On the page that appears, click the Source Database Profile step. In the upper-left corner of the step, click Create Profile

3.In the Create Profile dialog box, set Profile Name and upload a data file. Click Create.

4.Return to the Source Database Profile step. You can view the name, version, progress, and status of the created profile, as well as the actions that you can perform.