Forum Stats

  • 3,770,348 Users
  • 2,253,098 Discussions
  • 7,875,411 Comments

Discussions

Oracle entrprise Linux to Solaris Sparc database migration

DDeb
DDeb Member Posts: 64 Blue Ribbon
edited Jul 7, 2020 11:52AM in Recovery Manager (RMAN)

Hello experts,

                      We have a requirement to migrate database from Oracle enterprise Linux 7 to Solaris Sparc 10 version.As per my initial research from metalink it appears that there is no such support exist for this combination.Since I do not have experience so I just wanted to make sure whether anybody has done this combination of cross platform migration using rman.

Regards

Dhritiman Deb

DDeb

Best Answer

  • Maaz Khan
    Maaz Khan Member Posts: 226 Gold Badge
    edited Jul 5, 2020 1:57AM Accepted Answer

    Hello Dhritiman,

    Like you said you have already migrated database from Solaris to Linux platform, it is possible to migrate other way around. There are many ways in general to migrate like as follows -

    pastedImage_0.png

    Though in the diagram I have mentioned for Oracle ebs database, they also apply for any other non-ebs database too.

    Transportable tablespace is considered for larger database as it is more complicated while expdp/impdp is recommended for smaller databases.

    pastedImage_1.png

    Both methods support different endian formats.

    Can you try pl/sql with database in read only mode. AFAIK, DBMS_TDB will only work for database in read-only mode

    Please try running it like below once your db is in read only mode -

    set serveroutput on

    DECLARE
    x BOOLEAN;
    BEGIN
      x := dbms_tdb.check_db('Solaris[tm] OE (64-bit)', 0);
      IF x THEN
        dbms_output.put_line('TRUE');
      ELSE
        dbms_output.put_line('FALSE');
      END IF;
    END;
    /

    Hope this helps.

    Regards,

    Maaz

    DDeb

Answers

  • DDeb
    DDeb Member Posts: 64 Blue Ribbon
    edited Jul 2, 2020 8:35PM

    Sorry I forgot to mention that we are using 12.1.0.2 database .

  • Sunny kichloo
    Sunny kichloo Member Posts: 2,447 Gold Trophy
    edited Jul 3, 2020 2:03AM

    What is the current size of your database?

    What is downtime provided to you to do this whole activity?

    You can look into option like RMAN transportable tablespace

    RMAN: https://docs.oracle.com/database/121/BRADV/rcmxplat.htm#BRADV05432

  • DDeb
    DDeb Member Posts: 64 Blue Ribbon
    edited Jul 3, 2020 12:01PM

    Many thanks for your reply.I am sorry that I failed to explain my expectation.I have already migrated database from solaris to Linux platform using cross platform incremental backup method.

    My question is whether reverse is possible or not.I did my initial test like below.

    SQL> SELECT PLATFORM_NAME

    FROM   V$TRANSPORTABLE_PLATFORM

    WHERE  PLATFORM_ID =

           ( SELECT PLATFORM_ID

             FROM   V$DATABASE );

      2    3    4    5 

    PLATFORM_NAME

    --------------------------------------------------------------------------------

    Linux x86 64-bit  {This is my current platform and need to migrate back to Solaris[tm] OE (64-bit)}

    Below PL/SQL has been executed in Source Linux host and as per output it is not possible.Please let me know whether you have really gone through such a migration.

    DECLARE

      db_ready BOOLEAN;

    BEGIN

      db_ready :=

           DBMS_TDB.CHECK_DB('Solaris[tm] OE (64-bit)',DBMS_TDB.SKIP_READONLY);

    END;

    /

    The specified target platform name Solaris[tm] OE (64-bit) is invalid or the

    target platform is not transportable.

    In my opinion only same endian solaris platform can be migrated.If you have different opinion please explain your thought.

         

    PLATFORM_IDPLATFORM_NAMEENDIAN_FORMATCON_ID
    1Solaris[tm] OE (32-bit)Big0
    2Solaris[tm] OE (64-bit)Big0
    7Microsoft Windows IA (32-bit)Little0
    10Linux IA (32-bit)Little0
    6AIX-Based Systems (64-bit)Big0
    3HP-UX (64-bit)Big0
    5HP Tru64 UNIXLittle0
    4HP-UX IA (64-bit)Big0
    11Linux IA (64-bit)Little0
    15HP Open VMSLittle0
    8Microsoft Windows IA (64-bit)Little0
    9IBM zSeries Based LinuxBig0
    13Linux x86 64-bitLittle0
    16Apple Mac OSBig0
    12Microsoft Windows x86 64-bitLittle0
    17Solaris Operating System (x86)Little0
    18IBM Power Based LinuxBig0
    19HP IA Open VMSLittle0
    20Solaris Operating System (x86-64)Little0
    21Apple Mac OS (x86-64)Little0

    Regards

    Dhritiman Deb

  • DDeb
    DDeb Member Posts: 64 Blue Ribbon
    edited Jul 4, 2020 11:21PM

    I have found the below link which confirms that this is possible but only doubt here is why then pl/sql is failing.

    Regards

    Dhritiman Deb

  • Maaz Khan
    Maaz Khan Member Posts: 226 Gold Badge
    edited Jul 5, 2020 1:57AM Accepted Answer

    Hello Dhritiman,

    Like you said you have already migrated database from Solaris to Linux platform, it is possible to migrate other way around. There are many ways in general to migrate like as follows -

    pastedImage_0.png

    Though in the diagram I have mentioned for Oracle ebs database, they also apply for any other non-ebs database too.

    Transportable tablespace is considered for larger database as it is more complicated while expdp/impdp is recommended for smaller databases.

    pastedImage_1.png

    Both methods support different endian formats.

    Can you try pl/sql with database in read only mode. AFAIK, DBMS_TDB will only work for database in read-only mode

    Please try running it like below once your db is in read only mode -

    set serveroutput on

    DECLARE
    x BOOLEAN;
    BEGIN
      x := dbms_tdb.check_db('Solaris[tm] OE (64-bit)', 0);
      IF x THEN
        dbms_output.put_line('TRUE');
      ELSE
        dbms_output.put_line('FALSE');
      END IF;
    END;
    /

    Hope this helps.

    Regards,

    Maaz

    DDeb
  • Dude!
    Dude! Member Posts: 22,826 Black Diamond
    edited Jul 5, 2020 3:55AM

    You can use RMAN convert and transportable tablespace to migrate between different machine endian, including Intel to Sparc. The requirement to migrated from Sparc to Intel, and back to Sparc, sounds like an attempted sense of humor. Like it or not, but the sun has already set for Solaris on Sparc. Intel, Oracle Linux, or Cloud, are the new golden standard for the better or worse. I would say resources are better spent to upgrade from 12cR1 to 19c (12.2.0.3) in your case.

    DDeb
  • DDeb
    DDeb Member Posts: 64 Blue Ribbon
    edited Jul 5, 2020 4:32AM

    Actually you are right but you know money matters for every single decision.We are migrating one of our dw database to ODA but due to budget constraints we have to maintain non-prod instance in Solaris zone even though sun is setting bro.....

    Regards

    Dhritiman Deb

  • DDeb
    DDeb Member Posts: 64 Blue Ribbon
    edited Jul 5, 2020 4:43AM

    Thanks very much brother.I wonder why oracle has restricted creation of logical standby from little endian to Big endian format.

  • Dude!
    Dude! Member Posts: 22,826 Black Diamond
    edited Jul 5, 2020 4:51AM

    Well, as far as I know, as long as you have a valid Oracle database service contract, you can use any version of the database, so upgrading from 12c to 19c should not reflect on your budget form the perspective of licensing. If you change hardware and use different CPUs, however, it will.

  • DDeb
    DDeb Member Posts: 64 Blue Ribbon
    edited Jul 5, 2020 5:09AM

    No no we have budget for upgrading to 19c but we don't have budget to run non-prod instances to ODA box.Thats why we need to do platform conversion everytime when there is a requirement to refresh  non-prod from prod instance.Hope this clarifies...