Mục lục
1. Giới thiệu
1. Môi trường:
Trên server có IP 192.168.56.100 có 2 database:
Non-CDB:
- DB Name: noncdb
CDB:
- DB Name: cdbnew
Server đã cài đặt Oracle Database 19.3 và hệ điều hành Linux 7.9
2. Bài toán:
Migrate dữ liệu từ noncdb database sang 1 PDB thuộc CDB cdbnew.
2. Các bước tiến hành clone PDB từ Non-CDB
Trước đây, tôi đã có bài viết hướng dẫn anh em 1 cách khác để biến 1 non-CDB thành 1 PDB trong CDB thông qua database link.
Tuy nhiên nếu như non-CDB nằm cùng 1 server với CDB, cách làm trên sẽ duplicate (nhân bản) thêm dung lượng của non-CDB (để biến nó thành PDB).
Như vậy, sẽ cần thêm dung lượng để chứa lượng dữ liệu bị duplicate (có thể là tạm thời) đó,
Bài viết này hướng dẫn 1 cách khác, có thể khắc phục được nhược điểm đó, đó là sử dụng package DBMS_PDB
DBMS_PDB sẽ generate ra file xml cấu trúc của non-CDB, và chúng ta có thể migrate non-CDB vào thẳng CDB bằng file xml đó (tương tự như cách chúng ta plug 1 PDB vào CDB)
1. Đưa database Non-CDB về Read only
shutdown immediate
startup mount
alter database open readonly;
2. Kiểm tra tính tương thích của non-CDB với CDB mới
begin
dbms_pdb.describe (
pdb_descr_file => '/home/oracle/noncdb.xml'
);
end;
/
Sau đó chạy câu lệnh sau trên CDB:
set serveroutput on
declare
compatible constant varchar2(3) := case dbms_pdb.check_plug_compatibility (
pdb_descr_file => '/home/oracle/noncdb.xml',
pdb_name => 'noncdb')
when true then 'YES' else 'NO'
end;
begin dbms_output.put_line(compatible);
end;
/
Nếu kết quả trả về là ‘YES’, tức là non-CDB hoàn toàn tương thích với CDB, có thể thực hiện migrate thành PDB được
3. Shutdown non-CDB
shutdown immediate
4. Tạo PDB mới từ Non-CDB database
Thực hiện trên CDB cdbnew:
create pluggable database noncdb using '/home/oracle/noncdb.xml';
5. Chạy script noncdb_to_pdb.sql
Sau khi tạo xong PDB, bạn không được open database lên, bạn cần chạy script noncdb_to_pdb.sql trước:
sqlplus / as sysdba
alter session set container=noncdb;
@$ORACLE_HOME/rdbms/admin/noncdb_to_pdb.sql
6. Open PDB
alter pluggable database noncdb open;
Nguồn: https://dangxuanduy.com/
Hiện tại, tôi có tổ chức đều đặn các khóa học về quản trị Oracle Database, tôi sẽ để thông tin ở đây, để bạn nào quan tâm về lịch học cũng như chương trình học có thể theo dõi nhé.
Hãy tham gia group “Kho tài liệu kiến thức database” để cùng học hỏi và chia sẻ nhé.
-
Giảm giá!
Combo khóa học Oracle Admin và RAC
13.000.000 ₫10.000.000 ₫ Đăng ký -
Giảm giá!
TOP 1
[Khóa học Zoom] Quản trị chuyên nghiệp Oracle RAC
Được xếp hạng 5.00 5 sao9.000.000 ₫7.000.000 ₫ Đăng ký -
Giảm giá!
TOP 1
Combo học và thi chứng chỉ OCP
Được xếp hạng 5.00 5 sao15.750.000 ₫15.000.000 ₫ Đăng ký -
Giảm giá!
Combo khóa học Oracle Data Guard và Multitenant
5.000.000 ₫2.149.000 ₫ Đăng ký -
Giảm giá!
TOP 1
Combo tất cả các khóa quản trị Oracle Database
17.930.000 ₫12.000.000 ₫ Đăng ký -
Giảm giá!
[Khóa học Video] Quản trị hệ thống Oracle Data Guard
Được xếp hạng 5.00 5 sao3.000.000 ₫1.590.000 ₫ Đăng ký -
Giảm giá!
Voucher thi chứng chỉ OCP của Oracle
Được xếp hạng 5.00 5 sao6.700.000 ₫4.800.000 ₫ Đăng ký -
Giảm giá!
[Khóa học Video] Linux thật là đơn giản dành riêng cho DBA
Được xếp hạng 5.00 5 sao300.000 ₫100.000 ₫ Đăng ký -
Giảm giá!
[Khóa học Video] Các khái niệm phải biết về Database
Được xếp hạng 5.00 5 sao200.000 ₫50.000 ₫ Đăng ký -
Giảm giá!
[Khóa học Video] Quản lý Oracle Database theo kiến trúc Multitenant
Được xếp hạng 5.00 5 sao2.000.000 ₫1.190.000 ₫ Đăng ký -
Giảm giá!
TOP 1
[Khóa học Zoom] Quản trị Oracle Database thật là đơn giản
Được xếp hạng 4.95 5 sao8.000.000 ₫6.000.000 ₫ Đăng ký