Thứ Hai, 5 tháng 7, 2021

Script gather 1 Schema trong Oracle Database

Mục đích: Script gather 1 Schema trong Oracle Database, có thể đặt job chạy định kỳ 22h hàng ngày

- All partition của SCHEMA
-- Dùng incremetal=true đ không quét c bng
SELECT   table_owner,table_name, partition_name, last_analyzed,
             'exec dbms_stats.gather_table_stats(''' || table_owner||''',''' || table_name ||''',partname=>'''
             || PARTITION_NAME || ''',granularity=>''partition'',cascade=> TRUE,force=>TRUE,estimate_percent=>DBMS_STATS.AUTO_SAMPLE_SIZE,'
             || 'method_opt=>''FOR ALL COLUMNS SIZE AUTO'',degree => 8);'     script
              FROM   dba_tab_partitions
             WHERE  table_owner in ('USER1')
                    and ( (partition_name LIKE
                                 'DATA'
                              || TO_CHAR (trunc(sysdate) + 30, 'YYYYMM')
                              || '%')
                      OR (partition_name LIKE
                                 'DATA'
                              || TO_CHAR (trunc(sysdate) + 60, 'YYYYMM')
                              || '%'))                    
            AND (last_analyzed is null or nvl(last_analyzed,sysdate- 15) < trunc(sysdate))
            ORDER BY   table_owner, table_name, partition_name;
-- Bảng non-partition
declare
    --p_gather_date DATE := sysdate;
    CURSOR c_tables
    IS
          SELECT   table_name, last_analyzed,
                   'begin
                dbms_stats.gather_table_stats
                (ownname => '''
                               || 'TEST_OWNER'
                               || ''',
                tabname => '''
                               || table_name
                               || ''',
                cascade => true,
                estimate_percent => 10,
                degree => 10);
                end;
                '
                       script
            FROM   dba_tables
           WHERE       partitioned = 'NO' and
                owner='TEST_OWNER'
                   AND tablespace_name IS NOT NULL
                   AND table_name NOT LIKE '%$%'
                   --AND NVL (last_analyzed, SYSDATE - 15) < trunc(sysdate)
        ORDER BY   last_analyzed;

    v_table_name   VARCHAR2 (100);
BEGIN
        --send_sms('TEST_OWNER Started gathering unpartitioned_tables  at ' || to_char(sysdate,'dd/mm/yyy hh24:mm:ss'));
        FOR v_tables IN c_tables
        LOOP
            v_table_name := v_tables.table_name;
            EXECUTE IMMEDIATE v_tables.script;
            dbms_output.put_line(v_tables.script);
        END LOOP;
  EXCEPTION
        WHEN OTHERS
        THEN
            nul
=============================
* 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

ĐỌC NHIỀU

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