Nhập một bộ ký tự khác nhau xuất kết xuất vào một cá thể DB khác


7

Tôi đang cố gắng nhập một tệp kết xuất nhất định bằng tiện ích oracle imp. Tuy nhiên; Tôi đang đối mặt với các vấn đề sau.

C:\Users\AD>imp DB_USER/*****@dev1 file=C:\test\db42312.dmp log=C:\test\import2.log

Import: Release 11.2.0.1.0 - Production on Thu Apr 10 13:37:47 2014

Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.


Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

IMP-00038: Could not convert to environment character set's handle
IMP-00000: Import terminated unsuccessfully

C:\Users\AD>

DB nguồn của tôi mang lại kết quả sau cho truy vấn NLS

SQL> select * from v$nls_parameters where parameter in ('NLS_CHARACTERSET','NLS_LANGUAGE');

PARAMETER           VALUE
----------          ---------
NLS_LANGUAGE        FRENCH
NLS_CHARACTERSET    AL32UTF8

SQL>

Và DB đích của tôi mang lại kết quả như sau:

SQL> select * from v$nls_parameters where parameter in ('NLS_CHARACTERSET','NLS_LANGUAGE');

PARAMETER           VALUE
----------          ---------
NLS_LANGUAGE        AMERICAN
NLS_CHARACTERSET    AL32UTF8

SQL>

Vấn đề mà tôi gặp phải trong khi thực hiện lệnh nhập có vẻ như là một vấn đề về bộ ký tự.

Có thể nhập kết xuất cơ sở dữ liệu vào lược đồ mới (nhưng trống) của tôi không? Xin lưu ý rằng tôi đã có các cơ sở dữ liệu khác trên cùng một máy chủ.

Câu trả lời:


3

Đối với tôi đó là lệnh imp đã sai. Các bãi chứa tôi nhận được đã được sử dụng expdp và tôi đã cố gắng nhập nó với imp .

Đã nhập bằng lệnh impdp .


2

Theo tài liệu Metalink:

Nhập thất bại với lỗi IMP-38 (ID tài liệu 1024237.6)

  • Nguyên nhân: Tệp kết xuất bị hỏng hoặc biến môi trường không được đặt đúng.

  • Giải pháp: Có một vài điều cần xem xét khi tiếp cận vấn đề này:

Nếu tệp kết xuất xuất được chuyển từ vị trí này sang vị trí khác bằng FTP, hãy đảm bảo rằng tệp được gửi bằng chế độ BINARY.

Kiểm tra xem tệp kết xuất chưa được chỉnh sửa theo bất kỳ cách nào. Đây không phải là một hoạt động được hỗ trợ.

Kiểm tra cài đặt môi trường.

  1. Đảm bảo rằng biến môi trường LD_LIBRARY_PATHđang trỏ đến đúng ORACLE_HOMEcho phiên bản của tệp nhị phân Xuất đang được sử dụng.

    LD_LIBRARY_PATHnên được đặt thành $ORACLE_HOME/lib. Nếu điều này không được đặt chính xác, tệp thực thi xuất sẽ không thể tìm thấy các tệp NLS chính xác.

  2. Nếu sử dụng Oracle7.2.2, đảm bảo rằng biến môi trường ORA_NLSđược đặt đúng. Nó nên được đặt thành$ORACLE_HOME/ocommon/nls/admin/data

  3. Đặt biến môi trường NLS_LANGthành bộ ký tự của tệp kết xuất.

    Việc xuất có thể đã được tạo từ cơ sở dữ liệu đang sử dụng một bộ ký tự khác với cơ sở dữ liệu được sử dụng cho cơ sở dữ liệu đích.

    Điều này đặc biệt đúng nếu một cơ sở dữ liệu sử dụng bộ ký tự 7 bit và cơ sở dữ liệu khác sử dụng bộ ký tự 8 bit.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.