Mục lục

Kiến trúc Multitenant được giới thiệu trong phiên bản Oracle Database 12c cho phép 1 CDB có thể quản lý nhiều PDB.

Bài viết này sẽ hướng dẫn bạn cách quản lý user và quyền trong CDB và PDB.

Đọc thêm  Kiến trúc Multitenant trong Oracle Database là gì?

1. Giới thiệu

Kiến trúc Multitenant database có cách quản lý user mở rộng hơn 1 chút so với kiến trúc truyền thống. Ở trong kiến trúc này, user chia làm 2 loại:

Common user: User cho toàn bộ CDB và PDB. Bạn có thể sử dụng user này để kết nối vào cả CDB và PDB

  • Tên của Common User phải có tiền tố C## hoặc c## và là duy nhất trong tất cả các container.
  • Default tablespace, temporary tablespace, profile được gán cho Common User phải tồn tại trong tất cả container.

Local User: User của từng PDB. Bạn chỉ có thể dùng user này để kết nối vào PDB mà nó được tạo ra.

  • Ngược lại với Common User, tên của Local user không được chứa tiền tố C## hoặc c##, và chỉ cần duy nhất trong PDB.

Tương tự như vậy chúng ta cũng có 2 khái niệm Common Role và Local Role, hiểu đơn giản là áp dụng ở mức CDB hay PDB.

2. Tạo Common User

1. Kết nối vào Root Container

Common user là user cho toàn bộ CDB và PDB, do đó, để tạo Common user, trước tiên bạn cần phải kết nối vào CDB đã

sqlplus / as sysdba

2. Tạo Common User:

CREATE USER c##duydx IDENTIFIED BY oracle CONTAINER=ALL;
GRANT CREATE SESSION TO c##duydx CONTAINER=ALL;

Chú ý: Khi bạn đã kết nối vào root container (hay CDB), bạn có thể không cần chỉ ra mệnh đề CONTAINER=ALL, vì nó sẽ tự động được thêm vào câu lệnh.

3. Thử kết nối

Kết nối vào CDB

sqlplus c##duydx/oracle

connect to cdb

Kết nối vào PDB

sqlplus c##duydx/oracle@pdb1

Đọc thêm  Oracle 12c – Kết nối với CDB và PDB

3. Tạo Local User

1. Tạo Local User bằng cách kết nối vào CDB

sqlplus / as sysdba

Bạn sử dụng mệnh đề CONTAINER=CURRENT để chỉ ra user này sẽ được tạo cho PDB hiện bạn đang kết nối đến.

ALTER SESSION SET CONTAINER = pdb1;
CREATE USER duydx IDENTIFIED BY oracle CONTAINER=CURRENT;
GRANT CREATE SESSION TO duydx CONTAINER=CURRENT;

2. Tạo Local User bằng cách kết nối thẳng vào PDB

sqlplus sys/oracle@pdb1 as sysdba

Bạn có thể tạo Local User cho PDB mà không khác gì so với database theo kiến trúc cũ.

CREATE USER duydx IDENTIFIED BY oracle;
GRANT CREATE SESSION TO duydx;

3. Kiểm tra

Kết nối vào PDB

Kết nối vào CDB

connect to cdb 2

Kết luận: Như vậy Local User có thể kết nối vào PDB nhưng không thể kết nối đến CDB.

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é.

KHOÁ DÀNH CHO NGƯỜI MỚI

KHÓA HỌC: QUẢN TRỊ ORACLE DATABASE THẬT LÀ ĐƠN GIẢN (ADMIN 1)

CÁC KHOÁ NÂNG CAO:

KHÓA HỌC ORACLE NÂNG CAO: QUẢN TRỊ KIẾN TRÚC MULTITENANT 12c

KHÓA HỌC ORACLE NÂNG CAO: QUẢN TRỊ HỆ THỐNG DATA GUARD

CÁC KHOÁ COMBO:

COMBO 1: ADMIN 1 + MULTITENANT 12c

COMBO 2: ADMIN 1 + DATA GUARD

COMBO 3: ADMIN 1 + MULTITENANT 12c + DATA GUARD

LỊCH HỌC:

Mời bạn xem tại đây: LỊCH HỌC CÁC LỚP ORACLE 

ĐĂNG KÝ:

https://forms.gle/MtCAoRQFenP886y79

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é.

 

5 1 đánh giá
Article Rating
Theo dõi
Thông báo của
guest
0 Comments
Phản hồi nội tuyến
Xem tất cả bình luận
0
Rất thích suy nghĩ của bạn, hãy bình luận.x