/* 2.3.GEN PARTITION THEO NGAY */
- HOME
- 0.BASIC
- 1.SETUP
- 2.ADMIN
- FULL BÀI VIẾT
- CÂU HỎI THƯỜNG GẶP
- ADMIN TUTORIAL
- CÀI ĐẶT, PATCH
- UPGRADE/MIGRATION
- NGUYÊN LÝ
- CÔNG CỤ
- INSTANCE
- USER, QUYỀN
- LƯU TRỮ (STORAGE)
- GIAO DỊCH
- BẢO MẬT
- OBJECTS
- BACKUP
- RECOVERY
- BẢO TRÌ
- HIỆU NĂNG (PERFORMANCE)
- CÁC LỖI THƯỜNG GẶP
- TROUBLESHOOTING
- QUY TRÌNH VẬN HÀNH ORACLE DATABASE A-Z
- VẬN HÀNH TỰ ĐỘNG
- TIPS
- KHO TÀI NGUYÊN
- EXADATA
- KHÁC
- 3.DEV
- 4.SECURITY
- 5.TUNNING
- 6.RAC
- 7.HA
- 8.OTHER DB
- 9.SYSTEM
- 10.SOLUTION,AI
- 11.TRAINING
Hiển thị các bài đăng có nhãn Admin-Partitoning. Hiển thị tất cả bài đăng
Hiển thị các bài đăng có nhãn Admin-Partitoning. Hiển thị tất cả bài đăng
Thứ Bảy, 31 tháng 1, 2026
Script gen partition theo THÁNG trong Oracle Database
-- 2.2.GEN PARTITION theo thang: OK
Script gen partition theo năm trong Oracle
-- 2.1.GEN PARTITION theo nam:
Thứ Tư, 14 tháng 12, 2022
[VIP5] Quản lý Index Partition từ A-Z trong Oracle Database
|
1.CHECK |
-- Check index partition unusable cả DB select * from dba_ind_partitions where status!='USABLE' and index_owner not in ('SYS','SYSTEM') order by index_owner, index_name; |
Thứ Hai, 21 tháng 11, 2022
Oracle Database khủng với 32TB, 246 tỷ row Oracle quản lý như thế nào?
Mục đích: Show những bảng rất lớn của các database khủng (200TB online + 800TB Offline trên Tape), đây là database RDBMS lớn nhất tại Việt Nam và top lớn nhất trên thế giới. Thế thì chúng ta sẽ quản lý như nào cho hiệu quả. Nội dung này sẽ được chia sẻ khi bạn là học viên OAZ hoặc OAZ Mastery.
- Bảng lớn nhất dung lượng 32TB, nhiều bảng khác 10-30TB,... được báo cáo tự động hàng ngày:
- Những bảng > 1 tỷ row rất nhiều, trong đó bảng lớn nhất là 246 tỷ row, cực khủng, liệu Oracle có quản lý được không, khi cần có truy xuất được không?
* 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/Zalo: 0902912888
👨 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
=============================
oracle tutorial, 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,sql tutorial, khóa học pl/sql tutorial, 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 RAC, oracle dataguard, oracle goldengate, mview, oracle exadata, oracle oca, oracle ocp, oracle ocm , oracle weblogic, postgresql tutorial, mysql tutorial, mariadb tutorial, sql server tutorial, nosql, mongodb tutorial, oci, cloud, middleware tutorial, hoc solaris tutorial, hoc linux tutorial, hoc aix tutorial, unix tutorial, securecrt, xshell, mobaxterm, putty
Thứ Sáu, 7 tháng 10, 2022
Thủ tục thêm partition cho bảng partition trong Oracle Database
Mục đích: Thủ tục thêm partition cho bảng partition trong Oracle Database
Chủ Nhật, 17 tháng 4, 2022
Tạo composite partition theo list và subpartition theo range
Mục đích: Tạo bảng partition theo trường status gộp và subpartition theo trường month, chỉ 1 số partition theo status mới cần tạo subpartition do dữ liệu nhỏ.
Chi tiết thủ tục
--1.TẠO BẢNG
--drop table app_owner.tab1_new;
CREATE TABLE app_owner.tab1_new
(
tab1_ID NUMBER,
INSERT_DATE DATE,
REP_CUST_ID number;
INVOICE_ID NUMBER(10) NOT NULL,
CUST_ID NUMBER(10) NOT NULL,
EINV_ID number,
MONTH DATE NOT NULL,
STA_DATE DATE,
END_DATE DATE,
TAX NUMBER(3),
PAYMENT_AMOUNT_VAT NUMBER(15,2),
STATUS NUMBER,
DESCRIPTION VARCHAR2(4000 BYTE)
)
NOCOMPRESS
TABLESPACE DATA
PCTUSED 0
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE (
BUFFER_POOL DEFAULT
)
LOGGING
PARTITION BY LIST (STATUS)
SUBPARTITION BY RANGE (month)
(
PARTITION P03 VALUES ('0','3')
LOGGING
NOCOMPRESS
TABLESPACE DATA
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE (
BUFFER_POOL DEFAULT
),
PARTITION P16 VALUES ('1','6')
LOGGING
NOCOMPRESS
TABLESPACE DATA
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE (
BUFFER_POOL DEFAULT
),
PARTITION P5 VALUES ('5')
LOGGING
NOCOMPRESS
TABLESPACE DATA
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE (
BUFFER_POOL DEFAULT
),
PARTITION P2 VALUES ('2')
LOGGING
NOCOMPRESS
TABLESPACE DATA
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE (
BUFFER_POOL DEFAULT
)
(
SUBPARTITION data2020 VALUES LESS THAN (TO_DATE('01-01-2021', 'DD-MM-YYYY')) TABLESPACE DATA,
SUBPARTITION data2021 VALUES LESS THAN (TO_DATE('01-01-2022', 'DD-MM-YYYY')) TABLESPACE DATA,
SUBPARTITION data202201 VALUES LESS THAN (TO_DATE('01-02-2022', 'DD-MM-YYYY')) TABLESPACE DATA,
SUBPARTITION data202202 VALUES LESS THAN (TO_DATE('01-03-2022', 'DD-MM-YYYY')) TABLESPACE DATA,
SUBPARTITION data202203 VALUES LESS THAN (TO_DATE('01-04-2022', 'DD-MM-YYYY')) TABLESPACE DATA,
SUBPARTITION data202204 VALUES LESS THAN (TO_DATE('01-05-2022', 'DD-MM-YYYY')) TABLESPACE DATA,
SUBPARTITION data202205 VALUES LESS THAN (TO_DATE('01-06-2022', 'DD-MM-YYYY')) TABLESPACE DATA,
SUBPARTITION data202206 VALUES LESS THAN (TO_DATE('01-07-2022', 'DD-MM-YYYY')) TABLESPACE DATA,
SUBPARTITION data202207 VALUES LESS THAN (TO_DATE('01-08-2022', 'DD-MM-YYYY')) TABLESPACE DATA,
SUBPARTITION data202208 VALUES LESS THAN (TO_DATE('01-09-2022', 'DD-MM-YYYY')) TABLESPACE DATA,
SUBPARTITION data202209 VALUES LESS THAN (TO_DATE('01-10-2022', 'DD-MM-YYYY')) TABLESPACE DATA,
SUBPARTITION data202210 VALUES LESS THAN (TO_DATE('01-11-2022', 'DD-MM-YYYY')) TABLESPACE DATA,
SUBPARTITION data202211 VALUES LESS THAN (TO_DATE('01-12-2022', 'DD-MM-YYYY')) TABLESPACE DATA,
SUBPARTITION data202212 VALUES LESS THAN (TO_DATE('01-01-2023', 'DD-MM-YYYY')) TABLESPACE DATA
),
PARTITION P4 VALUES ('4')
LOGGING
NOCOMPRESS
TABLESPACE DATA
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE (
BUFFER_POOL DEFAULT
)
(
SUBPARTITION data2020_ VALUES LESS THAN (TO_DATE('01-01-2021', 'DD-MM-YYYY')) TABLESPACE DATA,
SUBPARTITION data2021_ VALUES LESS THAN (TO_DATE('01-01-2022', 'DD-MM-YYYY')) TABLESPACE DATA,
SUBPARTITION data202201_ VALUES LESS THAN (TO_DATE('01-02-2022', 'DD-MM-YYYY')) TABLESPACE DATA,
SUBPARTITION data202202_ VALUES LESS THAN (TO_DATE('01-03-2022', 'DD-MM-YYYY')) TABLESPACE DATA,
SUBPARTITION data202203_ VALUES LESS THAN (TO_DATE('01-04-2022', 'DD-MM-YYYY')) TABLESPACE DATA,
SUBPARTITION data202204_ VALUES LESS THAN (TO_DATE('01-05-2022', 'DD-MM-YYYY')) TABLESPACE DATA,
SUBPARTITION data202205_ VALUES LESS THAN (TO_DATE('01-06-2022', 'DD-MM-YYYY')) TABLESPACE DATA,
SUBPARTITION data202206_ VALUES LESS THAN (TO_DATE('01-07-2022', 'DD-MM-YYYY')) TABLESPACE DATA,
SUBPARTITION data202207_ VALUES LESS THAN (TO_DATE('01-08-2022', 'DD-MM-YYYY')) TABLESPACE DATA,
SUBPARTITION data202208_ VALUES LESS THAN (TO_DATE('01-09-2022', 'DD-MM-YYYY')) TABLESPACE DATA,
SUBPARTITION data202209_ VALUES LESS THAN (TO_DATE('01-10-2022', 'DD-MM-YYYY')) TABLESPACE DATA,
SUBPARTITION data202210_ VALUES LESS THAN (TO_DATE('01-11-2022', 'DD-MM-YYYY')) TABLESPACE DATA,
SUBPARTITION data202211_ VALUES LESS THAN (TO_DATE('01-12-2022', 'DD-MM-YYYY')) TABLESPACE DATA,
SUBPARTITION data202212_ VALUES LESS THAN (TO_DATE('01-01-2023', 'DD-MM-YYYY')) TABLESPACE DATA
),
PARTITION PM VALUES (DEFAULT)
LOGGING
NOCOMPRESS
TABLESPACE DATA
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE (
BUFFER_POOL DEFAULT
)
)
NOCACHE
MONITORING
ENABLE ROW MOVEMENT;
--2.Đổi tên bảng hiện tại đang chạy thành history
--27s
alter table app_owner.tab1 rename to tab1_history;
Có thể gặp lỗi như bên dưới:
--ORA-00054: resource busy and acquire with NOWAIT specified or timeout expired
Ta phải Kill lock đi theo câu lệnh, xác định đúng INST_ID để kill vào đúng node cần kill (nhầm co s
SELECT /*lock table*/ 'kill -9 ' || spid a, a.INST_ID,A.SQL_ID,A.SID, A.SERIAL#, a.USERNAME, a.STATUS,A.SCHEMANAME,a.OSUSER,A.MACHINE,A.PROGRAM,A.TYPE,A.LOGON_TIME,BACKGROUND
FROM gv$session a, gv$process b
WHERE b.addr = a.paddr
AND a.inst_id=b.inst_id
--and b.inst_id=3
AND (b.inst_id, a.sid) in
(SELECT /*+ parallel(8)*/ s.inst_id,s.sid
FROM gv$locked_object v, dba_objects d,
gv$lock l, gv$session s
WHERE v.object_id = d.object_id
AND (v.object_id = l.id1)
AND v.session_id = s.sid
and object_name=upper('tab1'))
--and type='USER'
--ORDER BY username, session_id;
--3.Đổi tên bảng mới về bảng product
alter table app_owner.tab1_new rename to tab1;
--4.Insert dữ liệu vào bảng mới
insert/*+ append nologging parallel(a,8) */ into app_owner.tab1 a
select /*+ parallel(b,8) */ * from app_owner.tab1_history b;
commit;
--5.Tao lại index
create index app_owner.tab1_NEW_I1 on app_owner.tab1(tab1_ID) tablespace INDX local parallel 8 online;
alter index app_owner.tab1_NEW_I1 noparallel;
create index app_owner.tab1_NEW_I2 on app_owner.tab1(CUST_ID) tablespace INDX local parallel 8 online;
alter index app_owner.tab1_NEW_I2 noparallel;
create index app_owner.tab1_NEW_I3 on app_owner.tab1(REP_CUST_ID) tablespace INDX local parallel 8 online;
alter index app_owner.tab1_NEW_I3 noparallel;
create index app_owner.tab1_NEW_I5 on app_owner.tab1(EINV_ID) tablespace INDX local parallel 8 online;
alter index app_owner.tab1_NEW_I5 noparallel;
create index app_owner.tab1_I6 on app_owner.tab1(INVOICE_ID) tablespace INDX local parallel 8 online;
alter index app_owner.tab1_I6 noparallel;
--6.Gahter
BEGIN
SYS.DBMS_STATS.GATHER_TABLE_STATS (
OwnName => 'app_owner'
,TabName => 'tab1'
,Estimate_Percent => 10
,Method_Opt => 'FOR ALL COLUMNS SIZE 1'
,Degree => 16
,Cascade => TRUE
,No_Invalidate => FALSE);
END;
/
Hy vọng giúp í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
=============================
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 oca, oracle ocp, oracle ocm , oracle weblogic, middleware, hoc solaris, hoc linux, hoc aix, unix, securecrt, xshell, mobaxterm, putty
* 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 oca, oracle ocp, oracle ocm , oracle weblogic, middleware, hoc solaris, hoc linux, hoc aix, unix, securecrt, xshell, mobaxterm, putty
Thứ Sáu, 15 tháng 4, 2022
Chuyển đổi bảng non-partition sang partition tự động
Vấn đề:
Bảng table_non_partition không chia partition mà dữ liệu đã 100, 200,... triệu row rồi, select rất chậm do vậy cần phải partition bảng này.
Thứ Tư, 2 tháng 3, 2022
Partition kết hợp (composite partitioning) trong Oracle Database
Composite Range-Hash Partitioning
CREATE TABLE page_history
( id NUMBER NOT NULL
, url VARCHAR2(300) NOT NULL
, view_date DATE NOT NULL
, client_ip VARCHAR2(23) NOT NULL
, from_url VARCHAR2(300)
, to_url VARCHAR2(300)
, timing_in_seconds NUMBER
) PARTITION BY RANGE(view_date) INTERVAL (NUMTODSINTERVAL(1,'DAY'))
SUBPARTITION BY HASH(client_ip)
SUBPARTITIONS 32
(PARTITION p0 VALUES LESS THAN (TO_DATE('01-JAN-2006','dd-MON-yyyy')))
PARALLEL 32 COMPRESS;Thứ Hai, 28 tháng 2, 2022
KHI NÀO CẦN TẠO PARTITION CHO BẢNG CSDL ORACLE
KHI NÀO NÊN TẠO PARTITION CHO BẢNG?
Oracle đã dựa trên câu chuyện bó đũa của Việt Nam để đưa ra tính năng tuyệt vời này: Tức là với bảng lớn (tương đương 10 cây đũa) thì rất khó chúng ta có thể thao tác, quản trị; nhưng khi chia thành những phần nhỏ chúng ta lại dễ dàng quản trị (bẽ gây đũa) được 😀😀😀
Vậy khi nào chúng ta cần tạo partition cho CSDL Oracle Theo khuyến cáo của Oracle thì chúng ta cần cân nhắc tạo partition cho bảng khi:
• Khi bảng lớn hơn 2GB
• Bảng có dữ liệu lịch sử: Chỉ cần DML trong tháng hiện tại (VD tháng 10/2019), còn lại trước đó Read Only
• Bảng chứa nhiều partition phân tán trên các phân vùng đĩa khác nhau (như SSD, FC, SAS, SATA) khi đó sẽ được lưu trên các tablespace tương ứng (như DATA2019, DATA2018, DATA2017,...)
• Còn 1 nội dung nữa mà Oracle không đưa ra trong phần lý thuyết đó là: Thực tế câu lệnh SELECT của chúng ta hay sử dụng quét theo điều kiện gì (theo ngày, theo tháng, theo quý hay theo năm) để chúng ta quyết định loại partition cho phù hợp.
Lựa chọn kiểu partition gì?
Chúng ta lựa chọn các kiểu partition dưới đây hoặc kết hợp các loại partition với nhau (composite):
- Với dữ liệu lịch sử thì đánh theo By Range.
- Với dữ liệu xác định trước được giá trị thì đánh theo By list.
- Với dữ liệu không có quy luật thì đánh theo By Hash.
Ví dụ:
-- Partition theo RANGE
CREATE TABLE invoices
(invoice_no NUMBER NOT NULL,
invoice_date DATE NOT NULL,
comments VARCHAR2(500))
PARTITION BY RANGE (invoice_date)
(PARTITION invoices_q1 VALUES LESS THAN (TO_DATE('01/04/2001', 'DD/MM/YYYY')) TABLESPACE users,
PARTITION invoices_q2 VALUES LESS THAN (TO_DATE('01/07/2001', 'DD/MM/YYYY')) TABLESPACE users,
PARTITION invoices_q3 VALUES LESS THAN (TO_DATE('01/09/2001', 'DD/MM/YYYY')) TABLESPACE users,
PARTITION invoices_q4 VALUES LESS THAN (TO_DATE('01/01/2002', 'DD/MM/YYYY')) TABLESPACE users);-- Partition theo HASH
CREATE TABLE invoices
(invoice_no NUMBER NOT NULL,
invoice_date DATE NOT NULL,
comments VARCHAR2(500))
PARTITION BY HASH (invoice_no)
PARTITIONS 4
STORE IN (users, users, users, users);-- Composite Partition (partition theo RANGE và subpartition theo HASH)
CREATE TABLE invoices
(invoice_no NUMBER NOT NULL,
invoice_date DATE NOT NULL,
comments VARCHAR2(500))
PARTITION BY RANGE (invoice_date)
SUBPARTITION BY HASH (invoice_no)
SUBPARTITIONS 8
(PARTITION invoices_q1 VALUES LESS THAN (TO_DATE('01/04/2001', 'DD/MM/YYYY')),
PARTITION invoices_q2 VALUES LESS THAN (TO_DATE('01/07/2001', 'DD/MM/YYYY')),
PARTITION invoices_q3 VALUES LESS THAN (TO_DATE('01/09/2001', 'DD/MM/YYYY')),
PARTITION invoices_q4 VALUES LESS THAN (TO_DATE('01/01/2002', 'DD/MM/YYYY'));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
=============================
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 oca, oracle ocp, oracle ocm , oracle weblogic, middleware, hoc solaris, hoc linux, hoc aix, unix, securecrt, xshell, mobaxterm, putty
Thứ Sáu, 16 tháng 4, 2021
Split Partition trong Oracle Database
Mục đích: Khi tạo partition từ 01/01/2021-31/12/2021 mà lại cần các partition 01/01/2020-31/12/2020 thì sẽ không add thêm partition vào được do min partition là 01/01/2021.
Giải pháp: split partition của Oracle Database
Thứ Năm, 1 tháng 4, 2021
Tạo partition tự động với tính năng INTERVAL trong Oracle Database
Mục đích: Tạo partition tự động với tính năng INTERVAL trong Oracle Database mà không cần tạo partition thủ công bằng tay hoặc bằng job.
Thứ Sáu, 5 tháng 3, 2021
Gather tự động cho các partition của 1 bảng lớn
Mục đích: Để gather 1 bảng có nhiều parition (VD theo ngày 10 năm, mỗi năm 365 partition thì 10 năm là 3.650 partition) thì sẽ rất lâu
Thứ Sáu, 1 tháng 1, 2021
Thứ Bảy, 12 tháng 12, 2020
Tự động Add partition cho bảng partition trong Oracle Database
Vấn đề: Đối với các bảng dữ liệu có đánh partition theo tháng hoặc theo ngày, người DBA thường xuyên phải đánh partition, nếu quên dữ liệu insert vào sẽ bị lỗi và có thể dẫn đến lỗi toàn hệ thống.
– Giải pháp: Để giải quyết vấn đề trên ta thường viết thủ tục đánh partition tự động cho bảng và đặt scheduler để chạy định kỳ. Việc đánh partition không ảnh hưởng tới các thao tác insert, select, update, delete.
Thứ Ba, 1 tháng 12, 2020
Script rebuild index theo ngày, tháng, năm trong Oracle Database
---index theo nam
DECLARE
v_nam varchar2(4) := '2012';
v_tablespace varchar2(50):='INDX';
cursor c1 is
-- select table_owner,table_name,max(partition_name)
-- from dba_tab_partitions group by table_owner,table_name having max(partition_name) like '%'||v_nam||'%' and length(max(partition_name))<9;
select table_owner,table_name,max(partition_name)
from dba_tab_partitions where table_name='table1' group by table_owner,table_name;
Quản lý Index Partition trong Oracle Database
--1.CHECK
select a.* from DBA_PART_INDEXES a, DBA_TAB_PARTITIONS b where a.owner=B.TABLE_OWNER and a.table_name=B.TABLE_NAME and a.owner not like 'SYS%' and b.partition_name like '%20131231';
-- Script rebuild index partititon unusable
select 'alter index ' || index_owner || '.' || index_name || ' rebuild partition ' || partition_name || ' tablespace INDX nologging parallel 8 online;' from dba_ind_partitions where status='UNUSABLE';
-- Script rebuild các partition index
--+ Bước 1: Rebuild
select 'alter index ' || index_owner || '.' || index_name || ' rebuild partition ' || partition_name || ' tablespace INDX' ||substr(partition_name,5,4)||' nologging parallel 8 online;' from dba_ind_partitions where
index_owner='APP_OWNER'
and index_name in (
'index_name_1',
'index_name_2'
)
order by partition_name desc
;
--+ Bước 2: Nologging noparallel
alter index app_owner.index_name_1 noparallel nologging;
alter index app_owner.index_name_2 noparallel nologging;
Chuyển bảng non-partition sang partition theo tháng trong Oracle Database
-- Thu tuc chuyen bang user1.table1 partition theo bdate sang partition theo thang
--1.CHECK, lay bang partition
select * from dba_tab_partitions where length(partition_name)=10;
--Lay cau truc bang sau ra lam mau
user1 table1
Chuyển bảng non-partition sang partition theo ngày trong Oracle Database
Mục đích: Khi bảng non-partiton lớn (> 2GB hoặc > 50 triệu row) thì chúng ta cân nhắc chuyển bảng sang partition, nếu quét theo ngày thì tạo partition theo ngày theo thủ tục sau:
select min(month) from user1.table1_NOPART;
--select min(load_date) from user1.table1 ;
--1.Rename table
alter table user1.table1 rename to table1_NOPART;
Tạo bảng partition theo ngày và add thêm partition thiếu của 1 bảng theo ngày trong Oracle Database
1. TẠO BẢNG
CREATE TABLE test_owner.tab1
(ID VARCHAR2(15) NOT NULL,
start_datetime DATE NOT NULL,
col1 DATE NOT NULL,
col2 VARCHAR2(1) NOT NULL,
col3 NUMBER(10,0),
)
TABLESPACE DATA
PARTITION BY RANGE (start_datetime)
(
PARTITION DATA20210303 VALUES LESS THAN (TO_DATE(' 2021-03-04 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
TABLESPACE DATA202103
)
2. THÊM PARTITION CÁC NGÀY KHÁC CHO BẢNG
DECLARE
v_nam NUMBER (4) := 2021;
v_owner varchar2 (50) := 'test_owner';
v_tablename VARCHAR2 (50) := 'tab1';
Đăng ký:
Bài đăng (Atom)
ĐỌC NHIỀU
-
Trước đây ai có tiền là 'vua', nhưng bây giờ ' Data is King ', thực sự data (dữ liệu) được coi là "trái tim của doanh ...
-
Oracle SQL Developer là phần mềm do chính hãng Oracle phát triển. Bạn có thể download phần mềm này từ đây hoặc từ link của Oracle tại đây...
-
Giới thiệu phần mềm: VanDyke SecureCRT and SecureFX là một ứng dụng chuyển tập tin an toàn, linh hoạt với giao diện trực quan cung cấp tr...
-
Oracle server là một hệ thống quản trị cơ sở dữ liệu đối tượng-quan hệ cho phép quản lý thông tin một cách toàn diện. Oracle server bao gồm ...
-
Bài viết này mô tả việc cài đặt Oracle Database 19c 64-bit trên Oracle Linux 7 (OL7) 64-bit bằng giao diện GUI hoặc bằng silent mode