Thứ Ba, 31 tháng 8, 2021

BÍ QUYẾT KHÔI PHỤC DỮ LIỆU ORACLE DATABASE

Nội dung:
1. Các tham số cấu hình backup trong Oracle Database https://www.tranvanbinh.vn/2020/10/cac-tham-so-cau-hinh-rman-co-ban.html

Thứ Sáu, 27 tháng 8, 2021

Thứ Năm, 26 tháng 8, 2021

Oracle Database index monitoring

Mục đích:  Monitor index xem index có được sử dụng hay không nếu index không sử dụng, tạo thừa thì chúng ta sẽ xóa đi. Việc xóa index nhỏ thì đơn giản nhưng index lớn của bảng to.

Thứ Hai, 23 tháng 8, 2021

ORACLE DATABASE KHỦNG THÌ BACKUP NHƯ THẾ NÀO?

Mục đích: Với các Database dung lượng lớn (>5TB) thì thường có dữ liệu cũ, không thay đổi do đó để giảm thời gian backup trước giờ làm việc (thường là 8h00 hàng ngày) ta phải read only/offline tablespace cũ để giảm dung lượng backup cho các tablespace chạy chính. Sau đây tôi sẽ chia sẻ với các bạn các script để backup để đảm bảo an toàn, nhanh chóng cho Database.

Chủ Nhật, 22 tháng 8, 2021

Quản lý Tablespaces trong Container Database (CDB) và Pluggable Database (PDB) trong Oracle Database 12c

Mục đích: Hướng dẫn Quản lý Tablespaces trong Container Database (CDB) và Pluggable Database (PDB) trong Oracle Database 12c

Cấu hình, thay đổi tham số Instance Container Databases (CDB) và Pluggable Databases (PDB) in Oracle Database 12c

Mục đích: Hướng dẫn Cấu hình, thay đổi tham số Instance Container Databases (CDB) và Pluggable Databases (PDB) in Oracle Database 12c

Nội dung:
  • Cấu hình tham số Instance trong CDB (ALTER SYSTEM)
  • Cấu hình tham số Instance trong PDB (ALTER SYSTEM)
  • Thay đổi CDB (ALTER DATABASE)
  • Thay đổi PDB (ALTER PLUGGABLE DATABASE)
  • PDB_SPFILE$

Cấu hình các tham số của Instancetrong CDB (ALTER SYSTEM)

Việc cấu hình các tham số phiên bản cho CDB không khác nhiều so với cấu hình cho các cơ sở dữ liệu non-CDB. Lệnh ALTER SYSTEM được sử dụng để thiết lập các tham số, với một số cấu hình cơ sở dữ liệu được sửa đổi bằng cách sử dụng lệnh ALTER DATABASE.

Khi được kết nối với tư cách là người dùng đặc quyền và trỏ đến root container, bất kỳ lệnh ALTER SYSTEM nào theo mặc định sẽ chỉ đến root container. Điều này có nghĩa là hai lệnh sau là tương đương nhau:

alter system set parameter_name=value;
alter system set parameter_name=value container=current;


ALTER SYSTEM SET OPEN_CURSORS = 200;
ALTER SYSTEM SET OPEN_CURSORS = 200 CONTAINER = CURRENT;

Ngoài hành động mặc định, thay đổi tham số khởi tạo từ root container có thể nhắm mục tiêu tất cả các container bằng cách sử dụng cú pháp sau.

alter system set parameter_name=value container=all;

ALTER SYSTEM SET OPEN_CURSORS = 200 CONTAINER = ALL;

Bằng cách sử dụng, CONTAINER=ALL tức là các PDB đều ảnh hưởng bởi tham số này.  Tuy nhiên nếu chúng ta thay đổi cục bộ tham số này (OPEN_CURSORS=300) ở PDB1 chẳng hạn thì giá trị 200 kia bị lờ đi.

Các PDB có thể ghi đè một số cài đặt tham số bằng cách đưa ra lệnh gọi ALTER SYSTEM cục bộ từ vùng chứa. Xem tài liệu tại đây

Cấu hình tham số Instance Parameters trong PDB (ALTER SYSTEM)

Trong phần trước, tôi đã đề cập rằng các tham số của instance có thể được thiết lập cho tất cả các PDB thuộc CDB bằng cách sử dụng mệnh đề  CONTAINER=ALL của lệnh ALTER SYSTEM từ root container. Ngay cả khi thiết lập kế thừa này, PDB cục bộ có thể ghi đè cấu hình này bằng cách sử dụng ALTER SYSTEM cục bộ bên trong PDB. Chỉ một tập hợp con của các tham số khởi tạo có thể được sửa đổi cục bộ trong PDB. Chúng có thể được hiển thị bằng cách sử dụng truy vấn sau.

column name format a35
column value format a35
 
select name, value
from   v$system_parameter
where  ispdb_modifiable = 'TRUE'
order by name;

Để thực hiện thay đổi PDB cục bộ, hãy đảm bảo rằng bạn được kết nối trực tiếp với một người sử dụng đặc quyền trong PDB (user local) hoặc với một người dùng có đặc quyền của CDB (user common). Như đã đề cập trước đây, nếu mệnh đề CONTAINER không được đưa ra, container hiện tại được ăn vào các thiết lập tham số, vì vậy lệnh ALTER SYSTEM sau đây là giống nhau

conn / as sysdba
alter session set container = pdb1;

alter system set parameter_name=value;
alter system set parameter_name=value container=current;

ALTER SYSTEM SET OPEN_CURSORS = 300;
ALTER SYSTEM SET OPEN_CURSORS = 300 CONTAINER = CURRENT;

Các thay đổi tham số mức instance trong root container được lưu trữ trong SPFILE theo cách bình thường. Khi bạn thay đổi các tham số khởi tạo dành riêng cho PDB trong PDB, chúng không được lưu trữ trong SPFILE. Thay vào đó, chúng được lưu trong bảng hệ thống PDB_SPFILE$, được thảo luận bên dưới. Xem tài liệu tại đây .

Thay đổi CDB (ALTER DATABASE)

Từ góc độ CDB, lệnh ALTER DATABASE tương tự như lệnh của cơ sở dữ liệu non-CDB. Bạn chỉ cần hiểu phạm vi của những thay đổi mà bạn đang thực hiện. Một số lệnh ALTER DATABASE áp dụng cho CDB theo định nghĩa sẽ ảnh hưởng đến tất cả các PDB của CDB. Một só tham số khác chỉ nhắm mục tiêu root container. Phạm vi của lệnh ALTER DATABASE được hiển thị trong bảng trong tài liệu ở đây . Ví dụ:

ALTER DATABASE BACKUP CONTROLFILE TO '+DATA/dbs/backup/control.bkp';

ALTER DATABASE cdb ADD LOGFILE
  GROUP 4 ('/u01/logs/orcl/redo04a.log','/u02/logs/orcl/redo04b.log')
  SIZE 100M BLOCKSIZE 512 REUSE;

ALTER DATABASE DEFAULT TABLESPACE root_tbs;

ALTER DATABASE DATAFILE '/u02/oracle/cdb_01.dbf' ONLINE;

ALTER DATABASE DEFAULT TEMPORARY TABLESPACE root_temp;

Thay đổi PDB (ALTER PLUGGABLE DATABASE)

Việc sửa đổi một PDB được thực hiện bằng cách trỏ đến container có liên quan (alter session set container=) và sử dụng lệnh ALTER PLUGGABLE DATABASE, nhưng vì lý do tương thích ngược, lệnh ALTER DATABASE sẽ hoạt động đối với hầu hết các sửa đổi có thể. Không có gì ngạc nhiên khi các sửa đổi có thể có đối với PDB là một tập hợp con của những sửa đổi có thể có đối với cơ sở dữ liệu CDB hoặc non-CDB.

Hãy nhớ rằng, để nhắm mục tiêu PDB, bạn phải kết nối với dịch vụ trỏ đến PDB tương ứng hoặc kết nối với root container và chuyển sang PDB container. Một số sửa đổi PDB có thể được hiển thị bên dưới.

conn / as sysdba
alter session set container = pdb1;

-- Phiên bản mặc định cho PDB.
alter pluggable database default edition = ora$base;

-- Kiểu tablespace mặc định cho PDB.
alter pluggable database set default bigfile tablespace;
alter pluggable database set default smallfile tablespace;

-- Tablespaces mặc định cho PDB.
alter pluggable database default tablespace users;
alter pluggable database default temporary tablespace temp;

-- Thay đổi global name. Điều này sẽ thay đổi tên container và
- tên của dịch vụ mặc định được đăng ký với listener.
alter pluggable database open restricted force;
alter pluggable database rename global_name to pdb1new;
alter pluggable database close immediate;
alter pluggable database open;

-- Thay đổi múi giờ cho PDB.
alter pluggable database set time_zone='GMT';

-- Thực hiện offline/online cho PDB 
alter pluggable database datafile '/u01/app/oracle/oradata/cdb1/pdb1/pdb1_users01.dbf' offline; alter pluggable database datafile '/u01/app/oracle/oradata/cdb1/pdb1/pdb1_users01.dbf' online; alter pluggable database datafile '/u01/app/oracle/oradata/cdb1/pdb1/pdb1_users01.dbf' resize 1g autoextend on next 1m; -- Ghi log bổ sung cho PDB. alter pluggable database add supplemental log data; alter pluggable database drop supplemental log data;

Ngoài ra, có một cơ chế để kiểm soát kích thước tối đa của PDB và lượngtemp được chia sẻ mà nó có thể sử dụng.

-- Giới hạn tổng dung lượng lưu trữ của PDB (datafile và local temp files).
alter pluggable database storage (maxsize 5g);

-- Giới hạn dung lượng temp được sử dụng trong các temp file được chia sẻ.
alter pluggable database storage (max_shared_temp_size 2g);

-- Kết hợp cả 2 
alter pluggable database storage (maxsize 5g max_shared_temp_size 2g);

-- Xóa bỏ các giới hạn đó
alter pluggable database storage unlimited;

PDB_SPFILE$

Như đã đề cập trước đây, các tham số khởi tạo cho PDB được lưu trữ trong một bảng hệ thống được gọi là PDB_SPFILE$Không có nhiều thông tin về nó trong tài liệu chính, nhưng nó sẽ được thảo luận trong ghi chú MOS sau đây.

Các tài liệu khuyến khích chúng ta sử dụng V$PARAMETER, V$SYSTEM_PARAMETER và V$SPPARAMETER, mà tất cả bao gồm một cột CON_ID, chứ không phải là truy vấn bảng PDB_SPFILE$.

Không rõ 100% bảng PDB_SPFILE$ được quản lý như thế nào Ví dụ: ghi chú MOS này cho biết các tham số đặt lại vẫn còn trong bảng, nhưng được đánh dấu là đã xóa, nhưng dường như không có bất kỳ thứ gì trong row cho biết một giá trị được đánh dấu là đã xóa.

Rõ ràng có những tình huống mà nội dung của bảng PDB_SPFILE$ có thể gây ra vấn đề và cần sự can thiệp thủ công. Trong lưu ý MOS sau đây, khuyến nghị là xóa thủ công một tham số cụ thể khỏi bảng và khởi động lại PDB.

Một kịch bản đã gây ra sự cố cho tôi liên quan đến việc tạo một PDB từ một phiên bản non-CDB. Vào cuối quá trình, tôi đã để lại các thông số mức PDB trong bảng  PDB_SPFILE$ mà tôi không muốn và việc đặt lại chúng ở mức PDB dường như không có bất kỳ tác động nào. Để giải quyết điều này tôi đã làm như sau.

Nhận danh sách các tham số, bao gồm PDB_UID.

set linesize 120
column pdb_name format a10
column name format a30
column value$ format a30

select ps.db_uniq_name,
       ps.pdb_uid,
       p.name as pdb_name,
       ps.name,
       ps.value$
from   pdb_spfile$ ps
       join v$pdbs p on ps.pdb_uid = p.con_uid
order by 1, 2, 3;

Xóa các tham số cấp PDB khỏi bảng, sử dụng giá trị PDB_UID .

delete from pdb_spfile$ where pdb_uid = {your PDB_UID value};
commit;

Khởi động lại  container database.

Nó khá căng và như tôi đã cảnh báo ở trên, đây không phải là một khuyến nghị!

Để biết thêm thông tin, hãy xem:

Hy vọng hữu ích với bạn.

=============================
* KHOÁ HỌC ORACLE DATABASE A-Z ENTERPRISE trực tiếp từ tôi giúp bạn bước đầu trở thành những chuyên gia DBA, đủ kinh nghiệm đi thi chứng chỉ OA/OCP, đặc biệt là rất nhiều kinh nghiệm, bí kíp thực chiến trên các hệ thống Core tại VN chỉ sau 1 khoá học.
* CÁCH ĐĂNG KÝ: Gõ (.) hoặc để lại số điện thoại hoặc inbox https://m.me/tranvanbinh.vn hoặc Hotline/Zalo 090.29.12.888
* Chi tiết tham khảo:
https://bit.ly/oaz_w
=============================
KẾT NỐI VỚI CHUYÊN GIA TRẦN VĂN BÌNH:
📧 Mail: binhoracle@gmail.com
☎️ Mobile: 0902912888
⚡️ Skype: tranbinh48ca
👨 Facebook: https://www.facebook.com/BinhOracleMaster
👨 Inbox Messenger: https://m.me/101036604657441 (profile)
👨 Fanpage: https://www.facebook.com/tranvanbinh.vn
👨 Inbox Fanpage: https://m.me/tranvanbinh.vn
👨👩 Group FB: https://www.facebook.com/groups/DBAVietNam
👨 Website: https://www.tranvanbinh.vn
👨 Blogger: https://tranvanbinhmaster.blogspot.com
🎬 Youtube: http://bit.ly/ytb_binhoraclemaster
👨 Tiktok: https://www.tiktok.com/@binhoraclemaster?lang=vi
👨 Linkin: https://www.linkedin.com/in/binhoracle
👨 Twitter: https://twitter.com/binhoracle
👨 Địa chỉ: Tòa nhà Sun Square - 21 Lê Đức Thọ - Phường Mỹ Đình 1 - Quận Nam Từ Liêm - TP.Hà Nội

=============================
học oracle database, Tự học Oracle, Tài liệu Oracle 12c tiếng Việt, Hướng dẫn sử dụng Oracle Database, Oracle SQL cơ bản, Oracle SQL là gì, Khóa học Oracle Hà Nội, Học chứng chỉ Oracle ở đầu, Khóa học Oracle online,khóa học pl/sql, học dba, học dba ở việt nam, khóa học dba, khóa học dba sql, tài liệu học dba oracle, Khóa học Oracle online, học oracle sql, học oracle ở đâu tphcm, học oracle bắt đầu từ đâu, học oracle ở hà nội, oracle database tutorial, oracle database 12c, oracle database là gì, oracle database 11g, oracle download, oracle database 19c, oracle dba tutorial, oracle tunning, sql tunning , oracle 12c, oracle multitenant, Container Databases (CDB), Pluggable Databases (PDB), oracle cloud, oracle security, oracle fga, audit_trail, oracle dataguard, oracle goldengate, mview, oracle exadata, oracle weblogic, middleware, hoc solaris, hoc linux, hoc aix, unix, oracle oca, oracle ocp, oracle ocm

Bật và tắt Container Databases (CDB) và Pluggable Databases (PDB) trong Oracle Database 12c

Mục đích: Hướng dẫn cách Bật và tắt Container Databases (CDB) và Pluggable Databases (PDB) trong Oracle Database 12c

Thứ Bảy, 21 tháng 8, 2021

Kết nối tới Container Databases (CDB) và Pluggable Databases (PDB) in Oracle Database 12c/19c/21c

Mục đích: Hướng dẫn cách kết nối đến Container Databases (CDB) và Pluggable Databases (PDB) trong Oracle Database 12c/19c/21c

Chuyển đổi Non-Container Database (CDB) sang Pluggable Database (PDB) trong Oracle Database 12c Release 1 (12.1)

Mục đích:  Chuyển đổi Non-Container Database (CDB) sang Pluggable Database (PDB) trong Oracle Database 12c Release 1 (12.1)/19c, nôi dung bài viết:

Tạo và cấu hình Container Database (CDB) trong Oracle Database 12c Release 1 (12.1)

Mục đích: Tính năng multitenant được giới thiệu từ phiên bản Oracle Database 12.1. Trong bài viết này tôi sẽ giới thiệu cách tạo và cấu hình Container Database (CDB) trong Oracle Database 12c, nội dung bài viết:

Multitenant : Tổng quan về Container Databases (CDB) và Pluggable Databases (PDB)

12c Release 1 (12.1) đã giới thiệu tùy chọn MultitenantBài viết này cung cấp tổng quan cơ bản về Container Databases (CDB) và Pluggable Databases (PDB).

Thứ Tư, 18 tháng 8, 2021

Thay đổi cấu hình SCAN trong Oracle 11g Release 2 RAC

Mục đích: Đổi tên "ol6-112-scan" thành "ol6-112-scan2". 

Chẩn đoán các sự cố Oracle RAC

Bài viết này mô tả các lệnh và tiện ích hữu ích khi chẩn đoán các sự cố RAC.

Xóa 1 instance từ Oracle RAC Database

Mục đích: Bài viết này trình bày cách xóa một instance khỏi cơ sở dữ liệu Oracle RAC bằng tiện ích DBCA. Môi trường như sau:

Xóa cài đặt Grid Infrastruture khi cài đặt lỗi

Bài viết này mô tả cách dọn dẹp Grid Infrastruture khi cài đặt lỗi. Khi thực hiện lệnh "root.sh" không thành công mà không fix được cần xóa hết đi và cài lại.

Chế độ Archivelog trong Oracle RAC

Mục đích: Bài viết này nêu bật sự khác biệt giữa việc archivelog mode giữa single instance và RAC.

Chuyển Schema từ Oracle Database 11G sang 12c/19c PDB

Mục đích: Chuyển Schema từ Oracle Database 11G sang 12c/19c PDB

Cài đặt, cấu hình, quản trị Oracle Data Guard Physical Standby trong Oracle Database 11.2, 12c, 19c từ A-Z

Data Guard là  giải pháp cơ sở dữ liệu dự phòng của Oracle, được sử dụng trong trường hợp thảm họa (disaster recovery) và có tính khả dụng cao

Thứ Bảy, 14 tháng 8, 2021

Kiểm tra, bật, tắt CDB, PDB với SQL*Plus trong Oracle Database 12c/18c/19c/21c

SQL Plus là một cửa sổ giao tiếp dạng Console đơn giản cho phép bạn gõ lệnh SQL lên đó. Thông thường chúng ta làm việc với một công cụ trực quan hơn (Không có sẵn khi bạn cài xong Oracle) mà bạn cần cài đặt thêm, có thể là các phần mềm do một công ty thứ 3 cung cấp.

Khắc phục lỗi ORA-01111: Name For Data File Is Unknown – Rename To Correct File trên Standby Database

LỖI: 

Lỗi xảy ra trên Physical standby database khi tiến trình Media Recovery MRP  bị  lỗi đột ngột (crash) và standby DB không được đồng bộ:

Thứ Tư, 11 tháng 8, 2021

Tự động kill uer ứng dụng khi vượt quá ngưỡng session do ứng dụng viết kém không giải phóng được session

Mục đích: Job này sẽ Tự động kill uer ứng dụng khi vượt quá ngưỡng session do ứng dụng viết kém không giải phóng được session (quá 500 session)

Thứ Hai, 2 tháng 8, 2021

“Recovery Manager Failed to Restore Datafiles” – Tạo Oracle Database 12.1.0.2.0 với DBCA trên Grid Infrastructure / ASM 12.1.0.2.0″

Lỗi:

Khi tạo database sử dụng Database Configuration Assistant (DBCA) gặp lỗi:  “Recovery Manager Failed to Restore Datafiles

Bật database khi mất toàn bộ online redo log

Mục đích: Bật database khi mất toàn bộ online redo log

Sử dụng CSI được Oracle cung cấp để truy cập kho tài nguyên Metalink

Sau khi mua license hoặc mua phần cứng, mua support Oracle sẽ cung cấp 1 số CSI cho mỗi doanh nghiệp. Số CSI này nhiều user trong doanh nghiệp có thể sử dụng để khai thác kho tài nguyên với hàng tỷ case của Oracle về Oracle Database, WebLogic, Oracle Linux,... Thông thường bạn sẽ được tra cứu thông tin các case lỗi, kiến thức và PATCH (patch trên Google không có đâu bạn nhé).

Các bước đăng ký số CSI với tài khoản My Oracle Support của mỗi cá nhân (tài khoản này có thể dùng email Gmail hoặc email của doanh nghiệp cấp cho bạn):
  1. Vào website My Oracle Support:
  2. Đăng nhập với account của bạn, tôi dùng tranbinh48ca@gmail.com.
  3. Sau khi đăng nhập thành công vào mục My Account.
  4. Vào mục  Support Identifiers, click Request Access. Mục Support Identifiers  hiển thị thông tin  account của bạn với user name đang kết nối
  5. Nhập số CSI,phần note là optional không cần thiết và click Request Access.
  6. Nhập tên công ty bạn đăng ký với Oracle tương ứng với số CSI number (của tôi là Tong Cong Ty Vien Thong XXXX) và click vào Validate.
  7. Click Next 
  8. Chấp nhận các điều khoản, điều kiện của Oracle và click Next.

9. Liên hệ với Admin để họ Approve sau đó bạn có thể vào được để tra cứu case lỗi, kiến thức và download patch.

Hy vọng hữu ích cho bạn.
=============================
* KHOÁ HỌC ORACLE DATABASE A-Z ENTERPRISE trực tiếp từ tôi giúp bạn bước đầu trở thành những chuyên gia DBA, đủ kinh nghiệm đi thi chứng chỉ OA/OCP, đặc biệt là rất nhiều kinh nghiệm, bí kíp thực chiến trên các hệ thống Core tại VN chỉ sau 1 khoá học.
* CÁCH ĐĂNG KÝ: Gõ (.) hoặc để lại số điện thoại hoặc inbox https://m.me/tranvanbinh.vn hoặc Hotline/Zalo 090.29.12.888
* Chi tiết tham khảo:
https://bit.ly/oaz_w
hoặc
https://bit.ly/oaz_fp
=============================
KẾT NỐI VỚI CHUYÊN GIA TRẦN VĂN BÌNH:
📧 Mail: binhoracle@gmail.com
☎️ Mobile: 0902912888
⚡️ Skype: tranbinh48ca
👨 Facebook: https://www.facebook.com/BinhOracleMaster
👨 Inbox Messenger: https://m.me/101036604657441 (profile)
👨 Fanpage: https://www.facebook.com/tranvanbinh.vn
👨 Inbox Fanpage: https://m.me/tranvanbinh.vn
👨👩 Group FB: https://www.facebook.com/groups/DBAVietNam
👨 Website: https://www.tranvanbinh.vn
👨 Blogger: https://tranvanbinhmaster.blogspot.com
🎬 Youtube: http://bit.ly/ytb_binhoraclemaster
👨 Tiktok: https://www.tiktok.com/@binhoraclemaster?lang=vi
👨 Linkin: https://www.linkedin.com/in/binhoracle
👨 Twitter: https://twitter.com/binhoracle
👨 Địa chỉ: Tòa nhà Sun Square - 21 Lê Đức Thọ - Phường Mỹ Đình 1 - Quận Nam Từ Liêm - TP.Hà Nội

=============================
học oracle database, Tự học Oracle, Tài liệu Oracle 12c tiếng Việt, Hướng dẫn sử dụng Oracle Database, Oracle SQL cơ bản, Oracle SQL là gì, Khóa học Oracle Hà Nội, Học chứng chỉ Oracle ở đầu, Khóa học Oracle online,khóa học pl/sql, học dba, học dba ở việt nam, khóa học dba, khóa học dba sql, tài liệu học dba oracle, Khóa học Oracle online, học oracle sql, học oracle ở đâu tphcm, học oracle bắt đầu từ đâu, học oracle ở hà nội, oracle database tutorial, oracle database 12c, oracle database là gì, oracle database 11g, oracle download, oracle database 19c, oracle dba tutorial, oracle tunning, sql tunning , oracle 12c, oracle dataguard, oracle goldengate, oracle weblogic, oracle exadata, hoc solaris, hoc linux, hoc aix

Kiến trúc Oracle Dataguard và các Background processes

Trong bài này, chúng ta sẽ  tìm hiểu Kiến trúc  Oracle DataGuard và các  Background processes với sự trợ giúp của các sơ đồ.

ĐỌC NHIỀU

Trần Văn Bình - Oracle Database Master