Үйлдлийн системээс хамаараад файлын endian нь Big болон Little гэсэн 2 форматтай байж болох бөгөөд ижил форматтай файлуудын хувьд шууд хуулан ашиглах боломжтой байдаг.
Little Endian
Энэ нь byte-ийн хамгийн бага дугаартай нь санах ойн хамгийн бага дугаарлалт дээр (low-order) байрлана гэсэн үг юм. Linux, Windows үйлдлийн системүүд “Little Endian” форматыг ашигладаг.
Жишээ нь :
Санах ойн хаяг+0 --> Byte0
Санах ойн хаяг+1 --> Byte1
Санах ойн хаяг+2 --> Byte2
Санах ойн хаягs+3 --> Byte3
Санах ойн хаягs+4 --> Byte4
Санах ойн хаягs+5 --> Byte5
Big Endian
Энэ нь byte-ийн хамгийн их дугаартай нь санах ойн хамгийн бага дугаарлалт дээр (high-order) байрлана гэсэн үг юм. Solaris, AIX, Apple Mac үйлдлийн системүүд “Big Endian” форматыг ашигладаг.
Жишээ нь :
Санах ойн хаяг+0 --> Byte5
Санах ойн хаяг+1 --> Byte4
Санах ойн хаяг+2 --> Byte5
Санах ойн хаягs+3 --> Byte2
Санах ойн хаягs+4 --> Byte1
Санах ойн хаягs+5 --> Byte0
Oracle өгөгдлийн сангийн файл форматыг мэдэхийн тулд дараах SQL -ийг ашиглаж болно.
SQL> set lin200
SQL> select * from v$transportable_platform order by platform_id;
PLATFORM_ID PLATFORM_NAME ENDIAN_FORMAT CON_ID
----------- ---------------------------------------- -------------- ----------
1 Solaris[tm] OE (32-bit) Big 0
2 Solaris[tm] OE (64-bit) Big 0
3 HP-UX (64-bit) Big 0
4 HP-UX IA (64-bit) Big 0
5 HP Tru64 UNIX Little 0
6 AIX-Based Systems (64-bit) Big 0
7 Microsoft Windows IA (32-bit) Little 0
8 Microsoft Windows IA (64-bit) Little 0
9 IBM zSeries Based Linux Big 0
10 Linux IA (32-bit) Little 0
11 Linux IA (64-bit) Little 0
12 Microsoft Windows x86 64-bit Little 0
13 Linux x86 64-bit Little 0
15 HP Open VMS Little 0
16 Apple Mac OS Big 0
17 Solaris Operating System (x86) Little 0
18 IBM Power Based Linux Big 0
19 HP IA Open VMS Little 0
20 Solaris Operating System (x86-64) Little 0
21 Apple Mac OS (x86-64) Little 0
20 rows selected.
Дараах жишээ нь TTS (Transportable Tablespaces)-д ашиглагдана. Linux -с AIX систем рүү датафайлыг зөөхөөс өмнө хийх үйлдэл юм.
[oracle@db01 ~]$ rman target /
Recovery Manager: Release 12.1.0.2.0 - Production on Sat Feb 23 21:26:56 2019
Copyright (c) 1982, 2014, Oracle and/or its affiliates. All rights reserved.
connected to target database: ORCL (DBID=1493294597)
RMAN> convert tablespace example to platform 'IBM Power Based Linux' db_file_name_convert '/u01/app/oracle/oradata/orcl/example01.dbf','/u01/app/oracle/oradata/orcl/example02-big.dbf';
Starting conversion at source at 23-FEB-19
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=19 device type=DISK
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of conversion at source command at 02/23/2019 21:27:48
RMAN-06599: Tablespace EXAMPLE is not read-only
RMAN> alter tablespace example read only;
Statement processed
RMAN> convert tablespace example to platform 'IBM Power Based Linux' db_file_name_convert '/u01/app/oracle/oradata/orcl/example01.dbf','/u01/app/oracle/oradata/orcl/example02-big.dbf';
Starting conversion at source at 23-FEB-19
using channel ORA_DISK_1
channel ORA_DISK_1: starting datafile conversion
input datafile file number=00005 name=/u01/app/oracle/oradata/orcl/example01.dbf
converted datafile=/u01/app/oracle/oradata/orcl/example02-big.dbf
channel ORA_DISK_1: datafile conversion complete, elapsed time: 00:00:56
Finished conversion at source at 23-FEB-19
RMAN>