Qui Truong

Ngày Đăng:

15/06/2023 21:45

Ngày Cập Nhật:

15/06/2023 21:45

Tác giả: Qui Truong
Ngày đăng: 15/06/2023 21:45

Export Import data trong oracle database: Kiết trúc chung

Export Import data trong Oracle, Trong bài viết “Hướng dẫn Export Import data trong Oracle database bằng Data Pump,” chúng tôi sẽ cung cấp cho bạn một hướng dẫn chi tiết về cách sử dụng công cụ Data Pump của Oracle để thực hiện việc xuất và nhập dữ liệu trong cơ sở dữ liệu Oracle.

Data Pump là một công cụ mạnh mẽ cho phép bạn sao lưu và khôi phục dữ liệu cùng với siêu dữ liệu (metadata) tương ứng. Bạn sẽ tìm hiểu về các chế độ xuất và nhập dữ liệu khác nhau như Full, Schema, Table, Tablespace, Transportable Tablespace, và Transportable Database.

Chúng tôi cũng sẽ hướng dẫn bạn cách tạo đối tượng thư mục (Directory Object) và áp dụng các kỹ thuật như Remap Datafile, Remap Tablespace, Remap Schema, Remap Table và Remap Data trong quá trình import để tùy chỉnh quá trình xuất và nhập dữ liệu theo nhu cầu của bạn.

Bài viết sẽ giúp bạn hiểu rõ hơn về Data Pump và cung cấp các bước thực hiện cụ thể để bạn có thể tự tin trong việc thao tác với dữ liệu trong Oracle database.

xport Import data trong Oracle database bằng Data Pump

DBMS_DATAPUMP

Đây là một thành phần quan trọng với giao diện lập trình ứng dụng (API) cho các công cụ export import data trong oracle hàng loạt với tốc độ cao, giúp di chuyển dữ liệu và siêu dữ liệu một cách nhanh chóng.

Direct Path API (DPAPI)

Oracle Database hỗ trợ giao diện DPAPI, cho phép tối thiểu hóa quá trình chuyển đổi và phân tích dữ liệu cả khi tải và giải nén. Điều này giúp tăng hiệu suất và giảm thời gian xử lý.

DBMS_METADATA

Được sử dụng bởi các tiến trình công việc để tải và tải lại siêu dữ liệu. Đáng chú ý, định nghĩa đối tượng trong cơ sở dữ liệu được lưu trữ dưới định dạng XML thay vì SQL, giúp tăng tính linh hoạt và tương thích.

External Table API

Với ORACLE_DATAPUMP và ORACLE_LOADER, bạn có thể lưu trữ dữ liệu trong các bảng ngoại vi, tức là trong các tệp độc lập không phụ thuộc vào nền tảng. Điều đặc biệt là câu lệnh SELECT có thể đọc dữ liệu từ các bảng ngoại vi như chúng được lưu trữ trong cơ sở dữ liệu Oracle.

SQL*Loader

Đã tích hợp với bảng ngoại vi, cho phép chuyển đổi tự động từ các tệp điều khiển của trình tải thành các tham số truy cập bảng ngoại vi. Điều này giúp dễ dàng và hiệu quả trong việc quản lý và tải dữ liệu.

Expdp và Impdp

Đây là các lớp mỏng sử dụng gói DBMS_DATAPUMP để khởi chạy và giám sát các hoạt động Data Pump. Chúng cung cấp giao diện đơn giản để thực hiện xuất và nhập dữ liệu.

Các ứng dụng khác

Hệ thống cung cấp hạ tầng cho các ứng dụng khác như sao chép dữ liệu, transportable tablespaces và các ứng dụng người dùng khác. Thậm chí, SQL*Plus cũng có thể được sử dụng làm khách hàng để thực hiện các truy vấn trạng thái đơn giản cho các hoạt động đang diễn ra.

Với những thành phần này, hệ thống mang lại sự mạnh mẽ và hiệu quả trong việc di chuyển và quản lý dữ liệu hàng loạt, đồng thời hỗ trợ các ứng dụng và công cụ khác trong việc tận dụng cơ sở hạ tầng này.

Tổng quan Oracle database Pump

Oracle Data Pump là một công cụ mạnh mẽ cho phép bạn tải và giải nén dữ liệu cũng như siêu dữ liệu của cơ sở dữ liệu Oracle với tốc độ vượt trội.

Hệ thống Data Pump được gọi thông qua gói PL/SQL DBMS_DATAPUMP, cho phép bạn xây dựng các tiện ích di chuyển dữ liệu tuỳ chỉnh theo nhu cầu của mình. Oracle Database cung cấp các công cụ sau đây, giúp bạn quản lý dữ liệu một cách dễ dàng và hiệu quả:

Công cụ dòng lệnh expdp và impdp

Đây là những công cụ mạnh mẽ cho phép bạn xuất và nhập dữ liệu với chỉ một vài lệnh đơn giản. Bằng cách sử dụng chúng, bạn có thể thực hiện các tác vụ sao lưu, khôi phục và di chuyển dữ liệu một cách nhanh chóng và dễ dàng.

Giao diện xuất và nhập dữ liệu trong Enterprise Manager Cloud Control

Đây là một giao diện đồ họa trực quan và dễ sử dụng, giúp bạn quản lý các quá trình xuất và nhập dữ liệu một cách trực quan và tiện lợi. Bạn có thể theo dõi tiến trình, điều chỉnh các tùy chọn và xem báo cáo chi tiết về các hoạt động của Data Pump.

Data Pump tự động chọn phương pháp truy cập dữ liệu phù hợp nhất để sử dụng, bao gồm truy cập trực tiếp hoặc thông qua các bảng ngoại vi. Điều này đảm bảo hiệu suất tối ưu và tốc độ cao khi tải và giải nén dữ liệu. Nếu có các yếu tố phức tạp như bảng nhóm, ràng buộc liên kết, cột mã hóa, Data Pump sẽ thông minh chuyển sang sử dụng bảng ngoại vi để đảm bảo tính toàn vẹn và an toàn dữ liệu.

Điểm đáng chú ý khác của Data Pump là khả năng ngừng và kết nối lại công việc mà không ảnh hưởng đến quá trình làm việc. Điều này cho phép bạn giám sát và kiểm soát các công việc từ nhiều vị trí khác nhau, đồng thời khởi động lại công việc dừng lại mà không mất dữ liệu đã được xử lý. Điều này giúp đảm bảo tính ổn định và hiệu suất trong quá trình di chuyển và quản lý dữ liệu của bạn.

Với Oracle Data Pump, việc tải và giải nén dữ liệu không còn là một thách thức. Bạn có thể thực hiện các tác vụ di chuyển dữ liệu một cách nhanh chóng, linh hoạt và an toàn, giúp tăng cường hiệu suất và hiệu quả của hệ thống cơ sở dữ liệu Oracle của bạn.

Lợi ích của việc sử dụng Oracle Database Pump

Các tham số EXCLUDE, INCLUDE và CONTENT được sử dụng để lựa chọn đối tượng và dữ liệu chi tiết.

Bằng cách sử dụng tham số VERSION, bạn có thể chỉ định phiên bản cơ sở dữ liệu cho các đối tượng cần di chuyển, từ đó tạo ra một tập tin nén tương thích với phiên bản trước của Oracle Database hỗ trợ Data Pump.

Tham số PARALLEL cho phép bạn chỉ định số lượng tối đa các luồng thực thi đang hoạt động cho công việc xuất dữ liệu.

Bạn có thể ước tính không gian mà một công việc Export Data sẽ sử dụng (mà không thực hiện thực tế việc xuất dữ liệu) bằng cách sử dụng tham số ESTIMATE_ONLY.

Chế độ NETWORKING cho phép bạn xuất dữ liệu trực tiếp từ cơ sở dữ liệu từ xa vào một tập tin nén. Điều này có thể được thực hiện bằng cách sử dụng liên kết cơ sở dữ liệu đến hệ thống nguồn.

Trong quá trình nhập dữ liệu, bạn có thể thay đổi tên tập tin dữ liệu đích, các schema và tablespace. Bên cạnh đó, bạn cũng có thể chỉ định một phần trăm dữ liệu mẫu và xuất từ cơ sở dữ liệu nguồn khi thực hiện công việc xuất dữ liệu Data Pump. Điều này có thể được thực hiện bằng cách chỉ định tham số SAMPLE.

Bạn có thể sử dụng tham số COMPRESSION để chỉ định liệu có nén dữ liệu siêu dữ liệu trong tập tin nén xuất để tiết kiệm không gian đĩa. Nếu nén siêu dữ liệu(Meta Data), nó sẽ được tự động giải nén trong quá trình nhập dữ liệu.

Oracle Data Pump cung cấp các tính năng sau:

  • Nén cả dữ liệu và siêu dữ liệu, chỉ dữ liệu, chỉ siêu dữ liệu hoặc không nén dữ liệu trong quá trình xuất.
  • Mã hóa dữ liệu và siêu dữ liệu, chỉ dữ liệu, chỉ siêu dữ liệu, không có dữ liệu hoặc chỉ các cột đã được mã hóa trong quá trình xuất. Bạn có thể chọn thuật toán mã hóa và cách bảo mật phù hợp với nhu cầu của bạn.
  • Xuất và nhập dữ liệu theo chế độ bảng, bao gồm cách xử lý các bảng có phân vùng trong quá trình nhập.
  • Ghi đè lên các tập tin nén hiện có trong quá trình xuất.
  • Đổi tên bảng trong quá trình nhập.
  • Tiếp tục quá trình tải dữ liệu ngay cả khi gặp vi phạm ràng buộc không được hoãn lại (áp dụng cho phương pháp truy cập bảng ngoại vi).
  • Xuất cột XMLType dưới dạng CLOB không nén, bất kể định dạng lưu trữ ban đầu của chúng.
  • Chỉ định hàm remap để thay đổi giá trị của cột trong quá trình xuất dữ liệu.
  • Remap dữ liệu trong quá trình nhập vào cơ sở dữ liệu mới.
  • Hỗ trợ sử dụng các tập lệnh Export (exp) và Import (imp) gốc.

Tạo Directory Object cho việc Pump Data

Các đối tượng thư mục (Directory objects) là các cấu trúc logic biểu diễn một thư mục vật lý trên hệ thống tệp của máy chủ. Chúng chứa địa chỉ của một thư mục cụ thể trên hệ điều hành.

Tên đối tượng thư mục này có thể được sử dụng trong Enterprise Manager để bạn không cần phải mã hóa cứng các đường dẫn thư mục. Điều này mang lại tính linh hoạt cao hơn cho việc quản lý tệp tin.

Các đối tượng thư mục(Directory object) thuộc sở hữu của người dùng SYS. Tên thư mục là duy nhất trong toàn bộ cơ sở dữ liệu vì tất cả các thư mục được đặt trong không gian tên duy nhất (tức là SYS).

Các đối tượng thư mục là bắt buộc khi bạn chỉ định vị trí tệp tin cho Data Pump vì nó truy cập tệp tin trên máy chủ chứ không phải trên máy khách.

Để tạo một đối tượng thư mục (Directory Object) cho việc sử dụng trong quá trình Data Pump, bạn có thể làm theo các bước sau:

1. Đăng nhập vào cơ sở dữ liệu Oracle bằng một người dùng có quyền DBA hoặc quyền CREATE ANY DIRECTORY.

2. Sử dụng câu lệnh CREATE DIRECTORY để tạo đối tượng thư mục, ví dụ:

CREATE DIRECTORY my_directory AS '/path/to/directory';

Trong đó, “my_directory” là tên bạn muốn đặt cho đối tượng thư mục, và ‘/path/to/directory’ là đường dẫn đến thư mục thực tế trên hệ thống tệp.

3. Đảm bảo rằng người dùng thực hiện Data Pump có quyền truy cập vào đối tượng thư mục. Bạn có thể sử dụng lệnh GRANT để cấp quyền cho người dùng:

GRANT READ, WRITE ON DIRECTORY my_directory TO username;

Trong đó, “my_directory” là tên đối tượng thư mục bạn đã tạo, và “username” là tên người dùng cần được cấp quyền.

4. Bây giờ bạn đã tạo thành công đối tượng thư mục để sử dụng trong Data Pump. Trong quá trình xuất hoặc nhập dữ liệu, bạn có thể tham chiếu đến đối tượng thư mục này bằng cách sử dụng tên bạn đã đặt (“my_directory” trong ví dụ trên).

Lưu ý rằng để tạo đối tượng thư mục, bạn cần quyền DBA hoặc quyền CREATE ANY DIRECTORY. Hãy đảm bảo rằng bạn đã được cấp quyền phù hợp trước khi thực hiện các bước trên.

Export Import Data Oracle bằng Data Pump: Tổng quan

xport Import data trong Oracle database bằng Data Pump

Data Pump Export là một tiện ích để giải nén dữ liệu và siêu dữ liệu thành một tập hợp các tệp tin hệ điều hành được gọi là tập tin nén (dump file sets). Data Pump Import được sử dụng để tải siêu dữ liệu và dữ liệu được lưu trữ trong tập tin nén xuất khẩu vào hệ thống đích.

Các công cụ Data Pump truy cập các tệp tin trên máy chủ chứ không phải trên máy khách. Các tiện ích này cũng có thể được sử dụng để xuất dữ liệu từ một cơ sở dữ liệu từ xa trực tiếp vào tập tin nén, hoặc tải cơ sở dữ liệu đích trực tiếp từ cơ sở dữ liệu nguồn mà không cần thông qua các tệp tin trung gian. Đây được gọi là chế độ mạng. Chế độ này đặc biệt hữu ích để xuất dữ liệu từ cơ sở dữ liệu nguồn chỉ cho phép đọc.

Ở trung tâm của mỗi hoạt động Data Pump là bảng chủ đạo (Master Table – MT), đây là một bảng được tạo trong schema của người dùng chạy công việc Data Pump. MT duy trì tất cả các khía cạnh của công việc.

MT được xây dựng trong quá trình xuất dữ liệu dựa trên tệp tin và được ghi vào tập tin nén như bước cuối cùng. Ngược lại, việc tải MT vào schema người dùng hiện tại là bước đầu tiên của quá trình nhập dữ liệu dựa trên tệp tin và được sử dụng để lập lịch tạo ra tất cả các đối tượng được nhập.

Lưu ý: MT là yếu tố quan trọng cho khả năng khởi động lại của Data Pump trong trường hợp dừng công việc theo kế hoạch hoặc không theo kế hoạch. MT được xóa khi công việc Data Pump hoàn thành một cách bình thường.

Data Pump Export và Import cung cấp các chế độ khác nhau để điều chỉnh phạm vi xuất và nhập dữ liệu. Dưới đây là mô tả về các chế độ này:

  • Chế độ Full (Toàn bộ): Trong chế độ này, bạn có thể xuất hoặc nhập toàn bộ cơ sở dữ liệu, bao gồm cả dữ liệu và siêu dữ liệu (metadata). Điều này cho phép bạn tạo bản sao lưu hoặc chuyển đổi toàn bộ cơ sở dữ liệu Oracle.
  • Chế độ Schema (Schema): Với chế độ này, bạn có thể xuất hoặc nhập một schema cụ thể trong cơ sở dữ liệu. Nó bao gồm các đối tượng và dữ liệu được lưu trữ trong schema đó. Điều này hữu ích khi bạn chỉ quan tâm đến một phần của cơ sở dữ liệu.
  • Chế độ Table (Bảng): Trên cơ sở dữ liệu, bạn có thể chọn xuất hoặc nhập một hoặc nhiều bảng cụ thể. Điều này cho phép bạn di chuyển hoặc sao lưu chỉ các bảng mà bạn quan tâm.
  • Chế độ Tablespace (Tablespace): Trong chế độ này, bạn có thể xuất hoặc nhập toàn bộ tablespace. Nó bao gồm các đối tượng và dữ liệu được lưu trữ trong tablespace đó. Điều này hữu ích khi bạn muốn di chuyển hoặc sao lưu toàn bộ tablespace.
  • Chế độ Transportable Tablespace (Tablespace có thể di chuyển): Chế độ này cho phép xuất và nhập tablespace độc lập để chuyển đổi giữa các cơ sở dữ liệu Oracle. Nó cho phép bạn di chuyển dữ liệu từ một cơ sở dữ liệu sang cơ sở dữ liệu khác một cách hiệu quả.
  • Chế độ Transportable Database (Cơ sở dữ liệu có thể di chuyển): Với chế độ này, bạn có thể xuất và nhập toàn bộ cơ sở dữ liệu. Điều này cho phép bạn chuyển đổi hoặc sao lưu toàn bộ cơ sở dữ liệu Oracle từ một hệ thống sang hệ thống khác.

Các chế độ này cung cấp sự linh hoạt cho việc lựa chọn phạm vi và đối tượng dữ liệu khi sử dụng Data Pump. Bạn có thể tận dụng các chế độ này để thực hiện các tác vụ sao lưu, di chuyển hoặc khôi phục dữ liệu một cách dễ dàng trong Oracle Database.

Hướng dẫn Export Data Oracle Database bằng cách sử dụng Data Pump

1. Mở SQL*Plus hoặc công cụ quản lý cơ sở dữ liệu Oracle của bạn và đăng nhập với quyền SYSDBA.

2. Tạo một tệp tin parameter để lưu các thông số cho công việc xuất:

   SQL> CREATE DIRECTORY my_dir AS 'đường_dẫn_directory';
   SQL> GRANT READ, WRITE ON DIRECTORY my_dir TO my_user;

Trong đó:

  • `my_dir` là tên directory bạn muốn tạo.
  • `’đường_dẫn_directory’` là đường dẫn vật lý của thư mục trên máy chủ chứa tập tin xuất.
  • `my_user` là người dùng mà bạn muốn cấp quyền truy cập vào directory.

3. Tiến hành xuất dữ liệu bằng lệnh EXPDP:

SQL> EXPDP my_user/password@tns_alias DIRECTORY=my_dir DUMPFILE=my_dumpfile.dmp LOGFILE=my_logfile.log SCHEMAS=my_schema

Trong đó:

  •    `my_user/password` là thông tin đăng nhập của người dùng có quyền xuất dữ liệu.
  •    `tns_alias` là tên định danh mạng (TNS) của cơ sở dữ liệu đích.
  •    `my_dir` là tên directory đã tạo ở bước trước.
  •    `my_dumpfile.dmp` là tên tệp tin xuất dữ liệu, bạn có thể chỉ định tên tùy ý.
  •    `my_logfile.log` là tên tệp tin ghi lại quá trình xuất dữ liệu.
  •    `my_schema` là tên của schema chứa dữ liệu bạn muốn xuất.

Quá trình xuất dữ liệu sẽ bắt đầu và tiến trình sẽ được ghi lại trong tệp tin ghi lại bạn đã chỉ định. Khi quá trình hoàn thành, tệp tin xuất dữ liệu sẽ được lưu trữ trong thư mục đã chỉ định trong Directory.

Đó là hướng dẫn để xuất dữ liệu bằng cách sử dụng Data Pump từ Directory đã tạo. Bạn có thể tùy chỉnh các tham số và lựa chọn khác của EXPDP để đáp ứng nhu cầu cụ thể của bạn.

Hướng dẫn thực hiện Import Data Oracle bằng Data Pump

Bước 1: Chuẩn bị tệp dữ liệu đầu vào

Trước khi bắt đầu quá trình import, hãy đảm bảo rằng bạn đã có tệp dữ liệu đầu vào (export dump file) từ quá trình Data Pump Export trước đó.

Bước 2: Tạo thư mục đích cho Data Pump Import

Sử dụng lệnh SQL*Plus hoặc SQL Developer, đăng nhập vào cơ sở dữ liệu với quyền SYSDBA hoặc tương đương.

Tạo một đối tượng thư mục (directory object) trong cơ sở dữ liệu để chỉ định vị trí thư mục đích cho quá trình Data Pump Import. Bạn có thể sử dụng lệnh CREATE DIRECTORY để thực hiện việc này. Ví dụ:

CREATE DIRECTORY import_dir AS '/path/to/import_directory';

Bước 3: Thực hiện Data Pump Import

Mở một cửa sổ dòng lệnh hoặc terminal trên máy chủ Oracle Database sau đó sử dụng lệnh impdp để bắt đầu quá trình Data Pump Import.

Ví dụ:

impdp username/password@service_name DIRECTORY=import_dir DUMPFILE=export_dumpfile.dmp LOGFILE=import_logfile.log

Giải thích:

  • Thay thế “username” và “password” bằng thông tin đăng nhập của người dùng có quyền thực hiện import.
  • Thay thế “service_name” bằng tên dịch vụ (service name) của cơ sở dữ liệu.
  • Thay thế “import_dir” bằng tên đối tượng thư mục (directory object) đã tạo trong bước 2.
  • Thay thế “export_dumpfile.dmp” bằng tên tệp dữ liệu đầu vào (export dump file) đã chuẩn bị trong bước 1.
  • Thay thế “import_logfile.log” bằng tên tệp nhật ký (log file) mà bạn muốn ghi lại quá trình import.

Bước 4: Theo dõi tiến trình và kiểm tra kết quả

– Khi quá trình Data Pump Import đang diễn ra, bạn có thể theo dõi tiến trình trong cửa sổ dòng lệnh hoặc terminal. Thông tin về tiến trình và lỗi (nếu có) sẽ được ghi vào tệp nhật ký đã được chỉ định.

– Sau khi quá trình import hoàn tất, hãy kiểm tra kết quả để đảm bảo rằng dữ liệu và metadata đã được nhập thành công vào cơ sở dữ liệu đích.

Lưu ý: Hãy chắc chắn rằng bạn đã có đủ quyền và hiểu rõ các tham số và tùy chọn khi sử dụng lệnh impdp để thực hiện Data Pump Import.

REMAP trong Import Data Pump

Do object metadata được lưu trữ dưới dạng XML trong tập tin dump, việc thực hiện các biến đổi trong quá trình hình thành DDL trong quá trình import trở nên dễ dàng. Data Pump Import hỗ trợ một số biến đổi(REMAP) sau đây:

  • REMAP_DATAFILE: hữu ích khi di chuyển cơ sở dữ liệu giữa các nền tảng với cú pháp hệ thống tệp khác nhau.
  • REMAP_TABLESPACE: cho phép di chuyển các đối tượng từ một tablespace sang một tablespace khác.
  • REMAP_SCHEMA: cung cấp khả năng thay đổi sở hữu đối tượng bằng cách sử dụng khả năng cũ FROMUSER/TOUSER.
  • REMAP_TABLE: cho phép đổi tên toàn bộ các bảng.
  • REMAP_DATA: cung cấp khả năng ánh xạ lại dữ liệu khi chúng được chèn vào.

Nhờ những biến đổi này, bạn có thể điều chỉnh dữ liệu và cấu trúc đối tượng trong quá trình import để đảm bảo phù hợp với môi trường đích và yêu cầu của bạn.

Hướng dẫn cách áp dụng kỹ thuật remap trong quá trình import Data Pump

REMAP_DATAFILE

Kỹ thuật này được sử dụng khi bạn muốn di chuyển cơ sở dữ liệu giữa các nền tảng có cú pháp hệ thống tệp khác nhau.

Ví dụ, giả sử bạn đã tạo một tập tin dump trên một hệ thống với cú pháp tệp NTFS và bạn muốn nhập khẩu nó vào một hệ thống với cú pháp tệp ext4. Để áp dụng kỹ thuật này, bạn có thể thực hiện các bước sau:

impdp system/password@db10g \
directory=dpump_dir1 \
dumpfile=expdat.dmp \
remap_datafile='/u01/app/oracle/oradata/source/system01.dbf:/u02/app/oracle/oradata/target/system01.dbf'

Trong ví dụ trên, đường dẫn tệp tin dữ liệu (`/u01/app/oracle/oradata/source/system01.dbf`) của hệ thống nguồn được ánh xạ lại thành đường dẫn tệp tin dữ liệu (`/u02/app/oracle/oradata/target/system01.dbf`) của hệ thống đích.

REMAP_TABLESPACE

Kỹ thuật này cho phép bạn di chuyển các đối tượng từ một tablespace sang một tablespace khác. Ví dụ, giả sử bạn muốn di chuyển các đối tượng từ tablespace `USERS_OLD` sang tablespace `USERS_NEW`. Để thực hiện điều này, bạn có thể sử dụng câu lệnh sau:

impdp system/password@db10g \
directory=dpump_dir1 \
dumpfile=expdat.dmp \
remap_tablespace=USERS_OLD:USERS_NEW

Trong ví dụ này, tất cả các đối tượng thuộc tablespace `USERS_OLD` sẽ được ánh xạ sang tablespace `USERS_NEW` trong quá trình import.

REMAP_SCHEMA

Kỹ thuật này cho phép bạn thay đổi sở hữu đối tượng bằng cách sử dụng khả năng cũ `FROMUSER/TOUSER`. Ví dụ, giả sử bạn muốn thay đổi sở hữu các đối tượng từ `HR_OLD` sang `HR_NEW`. Để thực hiện việc này, bạn có thể sử dụng câu lệnh sau:

impdp system/password@db10g \
directory=dpump_dir1 \
dumpfile=expdat.dmp \
remap_schema=HR_OLD:HR_NEW

Trong ví dụ này, tất cả các đối tượng thuộc sở hữu `HR_OLD` sẽ được chuyển sang sở hữu `HR_NEW` trong quá trình import.

REMAP_TABLE

Kỹ thuật này cho phép bạn đổi tên toàn bộ các bảng trong quá trình import. Ví dụ, giả sử bạn muốn đổi tên bảng `EMPLOYEES` thành `EMP`. Để làm điều này, bạn có thể sử dụng câu lệnh sau:

impdp system/password@db10g \
directory=dpump_dir1 \
dumpfile=expdat.dmp \
remap_table=HR.EMPLOYEES:HR.EMP

Trong ví dụ này, bảng `EMPLOYEES` thuộc sở hữu `HR` sẽ được đổi tên thành `EMP` trong quá trình import.

REMAP_DATA

Kỹ thuật này cho phép bạn ánh xạ lại dữ liệu khi chúng được chèn vào trong quá trình import. Ví dụ, giả sử bạn muốn ánh xạ lại giá trị `100` sang `200` trong cột `SALARY`. Để thực hiện việc này, bạn có thể sử dụng câu lệnh sau:

impdp system/password@db10g \
directory=dpump_dir1 \
dumpfile=expdat.dmp \
remap_data=HR.EMPLOYEES.SALARY:HR.EMPLOYEES.SALARY:100:200

Trong ví dụ này, trong quá trình import, giá trị `100` trong cột `SALARY` của bảng `EMPLOYEES` thuộc sở hữu `HR` sẽ được ánh xạ thành giá trị `200`.

Lưu ý: Trong mỗi ví dụ trên, `system/password@db10g` là thông tin đăng nhập vào cơ sở dữ liệu, `dpump_dir1` là tên của đối tượng thư mục trên cơ sở dữ liệu, và `expdat.dmp` là tên tập tin dump để import. Bạn cần điều chỉnh các giá trị này phù hợp với môi trường cụ thể của mình.

Chia sẽ bài viết này

{"email":"Email address invalid","url":"Website address invalid","required":"Required field missing"}

Qui Truong

Thông tin tác giả:

Xin chào mọi người, mình là Qui Trương. Hiện tại, ngoài công việc là một DBA thì mình còn là một người sáng tạo nội dung trên trang blog caitrang.com. Mỗi ngày, mình luôn tìm kiếm cách để chia sẻ những nội dung độc đáo, ý nghĩa và mang tính cảm hứng tới mọi người. Mình tin rằng qua từng dòng viết, mình có thể kết nối và tạo dựng một cộng đồng đọc giả thú vị và ý nghĩa.

Page [tcb_pagination_current_page] of [tcb_pagination_total_pages]

>