首先通过ue等编辑软件打开dmp文件或者在Linux下执行如下然后察看第二、三字节:
oracle@lftest ~]$ cat aa.dmp | od -x | head
0000000 0303 5445 5850 4f52 543a 3156 2e30 3230
0000020 302e 0a31 5344 5359 4554 0a4d 5552 4553
0000040 5352 380a 3931 0a32 0a30 3032 300a 000a
0000060 0301 0754 00d0 0001 0000 0000 0000 0000
0000100 0006 2020 2020 2020 2020 2020 2020 2020
0000120 2020 2020 2020 2020 2020 2020 2020 2020
0000140 2020 2020 2020 2020 5720 6465 4e20 766f
0000160 3120 3120 3a30 3831 313a 2030 3032 3630
0000200 6161 642e 706d 0000 0000 0000 0000 0000
0000220 0000 0000 0000 0000 0000 0000 0000 0000,
下划线0354即时第二、三字节
把0354十六进制转换为十进制:
SQL> select to_number(354,'xxx') from dual;
TO_NUMBER(354,'XXX')
--------------------
852
SQL> select nls_charset_name(852) from dual;
NLS_CHAR
--------
ZHS16GBK
SQL> select nls_charset_id('zhs16gbk') from dual;
NLS_CHARSET_ID('ZHS16GBK')
--------------------------
852
通过查询得知是zhs16gbk字符集