ORACLE Export (exp) vs Datapump (expdp)
ORACLE cung cấp hai tiện ích bên ngoài để chuyển các đối tượng cơ sở dữ liệu từ cơ sở dữ liệu này sang cơ sở dữ liệu khác. Hàng xuất khẩu truyền thống (exp / imp) được giới thiệu trước 10g. Sau đó, từ 10g, ORACLE đã giới thiệu datapump (expdp / impdp) như một sự cải tiến cho tiện ích xuất truyền thống.
Xuất khẩu truyền thống (exp / imp)
Đây là một tiện ích bên ngoài cơ sở dữ liệu ORACLE, được sử dụng để chuyển các đối tượng cơ sở dữ liệu từ một máy chủ cơ sở dữ liệu sang một máy chủ cơ sở dữ liệu khác. Nó cho phép chuyển các đối tượng cơ sở dữ liệu qua các nền tảng khác nhau, các cấu hình phần cứng và phần mềm khác nhau. Khi một lệnh xuất được thực thi trên cơ sở dữ liệu, các đối tượng cơ sở dữ liệu được trích xuất với các đối tượng phụ thuộc của chúng. Điều đó có nghĩa là nếu nó trích xuất một bảng, các phụ thuộc như chỉ mục, nhận xét và trợ cấp sẽ được trích xuất và ghi vào một tệp xuất (tệp kết xuất định dạng nhị phân). Sau đây là lệnh xuất toàn bộ cơ sở dữ liệu, Cmd > exp userid=username / [email protected] _tns file=export.dmp log=export.log full=y Statistics=none
Lệnh trên sẽ được xuất cơ sở dữ liệu sang tệp kết xuất nhị phân có tên export.dmp. Sau đó, tiện ích imp có thể được sử dụng để nhập dữ liệu này vào cơ sở dữ liệu khác. Sau đây là lệnh nhập, Cmd > imp userid=username / [email protected] _tns file=export.dmp log=import.log full=y Statistics=none
Xuất Datapump (expdp / impdp)
Đây cũng là một tiện ích bên ngoài cơ sở dữ liệu ORACLE, được sử dụng để chuyển các đối tượng giữa các cơ sở dữ liệu. Tiện ích này đến từ cơ sở dữ liệu ORACLE 10g. Nó có nhiều cải tiến hơn so với các tiện ích exp / imp truyền thống. Tiện ích này cũng tạo các tệp kết xuất, có định dạng nhị phân với các đối tượng cơ sở dữ liệu, siêu dữ liệu đối tượng và thông tin kiểm soát của chúng. Các lệnh expdp và impdp có thể được thực thi theo ba cách,
- Giao diện dòng lệnh (chỉ định tham số expdp / impdp trong dòng lệnh)
- Giao diện tệp tham số (chỉ định tham số expdp / impdp trong một tệp riêng)
- Giao diện lệnh tương tác (nhập các lệnh khác nhau trong dấu nhắc xuất)
Có năm chế độ tải dữ liệu khác nhau bằng expdp. Họ là,
- Chế độ Xuất Toàn bộ (toàn bộ cơ sở dữ liệu được dỡ bỏ)
- Chế độ lược đồ (đây là chế độ mặc định, các lược đồ cụ thể được tải xuống)
- Chế độ Bảng (tập hợp các bảng được chỉ định và các đối tượng phụ thuộc của chúng được dỡ bỏ)
- Chế độ vùng bảng (các bảng trong vùng bảng được chỉ định được dỡ bỏ)
- Chế độ vùng bảng có thể vận chuyển (chỉ siêu dữ liệu cho các bảng và các đối tượng phụ thuộc của chúng trong một tập hợp không gian bảng cụ thể mới được dỡ bỏ)
Sau đây là cách xuất toàn bộ cơ sở dữ liệu bằng expdp, Cmd > expdp userid=tên người dùng / mật khẩu dumpfile=expdp_export.dmp logfile=expdp_export.log full=y thư mục=export
Sau đó, tiện ích impdp sẽ được sử dụng để nhập tệp này vào cơ sở dữ liệu khác.
Sự khác biệt giữa Xuất khẩu Truyền thống và Datapump là gì?
• Datapump hoạt động trên một nhóm tệp được gọi là tập hợp tệp kết xuất. Tuy nhiên, quá trình xuất thông thường hoạt động trên một tệp duy nhất.
• Các tệp truy cập Datapump trong máy chủ (sử dụng thư mục ORACLE). Xuất truyền thống có thể truy cập tệp trong cả máy khách và máy chủ (không sử dụng thư mục ORACLE).
• Xuất (exp / imp) biểu thị thông tin siêu dữ liệu cơ sở dữ liệu dưới dạng DDL trong tệp kết xuất, nhưng trong tệp kết xuất dữ liệu, nó biểu thị ở định dạng tài liệu XML.
• Datapump có khả năng thực thi song song nhưng trong thực thi luồng đơn exp / imp.
• Datapump không hỗ trợ phương tiện tuần tự như băng, nhưng hỗ trợ xuất truyền thống.