Thứ Tư, 20 tháng 11, 2019

Sự khác nhau giữ DELETE, DROP & CREATE và TRUNCATE của bảng và cluster


Bạn có thể xóa tất cả các hàng của một bảng hoặc tất cả các hàng trong một nhóm các bảng được phân cụm (Clustered tables, gọi tắt là bảng cụm) sao cho bảng (hoặc cụm) vẫn tồn tại, nhưng hoàn toàn trống rỗng. Ví dụ, hãy xem xét một bảng chứa dữ liệu hàng tháng và vào cuối mỗi tháng, bạn phải làm trống nó (xóa tất cả các hàng) sau khi lưu trữ dữ liệu của nó.
Kết quả hình ảnh cho DELETE, DROP  oracle database

Quản lý dữ liệu LOB cơ sở dữ liệu Oracle

Dữ liệu LOB rất khó quản lý nhưng nếu hiểu bản chất và thao tác 1 vài lần thì lại đơn giản, sau khi đọc xong bài viết này bạn đã có trong tay các câu lệnh thường dùng nhất về LOB:
Kết quả hình ảnh cho lob oracle database

Quy trình RESIZE LẠI DATAFILE của cơ sở dữ liệu Oracle

Sau khi TRUNCATE hoặc xóa dữ liệu thì kích thước của datafile sẽ không được thu hồi luôn mà do tiến trình tự động của Oracle tính toán xác định space có sử dụng hay không trước khi thu hồi về cho CSDL. Chúng ta có thể resize lại sau khi TRUNCATE dữ liệu (xóa thì có thể không thu hồi được nhiều) theo thủ tục sau:

Kết quả hình ảnh cho resize datafile oracle database

Thứ Hai, 18 tháng 11, 2019

Quy trình chuyển bảng từ non-partiton sang partion theo tháng_Insert từng phần

-- Cách sử dụng: Copy  vào TOAD hoặc SQL Navigator hoặc SQL Devloper để chạy script sau:

-- Áp dụng cho bảng lớn, dữ liệu tĩnh trong khoảng thời gian nhất định, còn dữ liệu động chuyển sau

-- Thu tuc chuyen bang TAB1 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 partition theo thang (vao TOAD --> F4)
BINHTV    TAB_TEMPLATE

QUY TRÌNH CHUYỂN BẢNG TỪ NON-PARTITION SANG PARTITION THEO NGÀY_Insert All dữ liệu

  -- Note: Áp dụng cho bảng nhỏ, có thể downtime lâu

1.Rename table

alter table SCOTT.TAB1 rename to TAB1_NOPART;

2. Tạo bảng partition:
CREATE TABLE SCOTT.TAB1(
  SUB_ID         NUMBER,
  BILL_ITEM_ID   NUMBER
)
TABLESPACE TMP_DUMP
PARTITION BY RANGE (PDATE)
(
  PARTITION DATA20180101 VALUES LESS THAN (TO_DATE(' 2019-01-02 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
  TABLESPACE DATA201301
)

Thứ Sáu, 15 tháng 11, 2019

Quy trình Cài đặt Oracle Database 12cR2 trên Oracle Linux 6, 7

Cài đặt cơ sở dữ liệu Oracle 12c Phiên bản 2 (12.2) trên Oracle Linux 6 (OL6) và 7 (OL7)
Bài viết này mô tả việc cài đặt Cơ sở dữ liệu Oracle 12c Phiên bản 2 (12.2) 64 bit trên Oracle Linux 6 (OL6) và 7 (OL7) 64 bit (tại đây). Bài viết này dựa trên cài đặt máy chủ với tối thiểu 2G trao đổi và Linux an toàn được đặt thành cho phép.  

Thứ Năm, 14 tháng 11, 2019

Quy trình cài đặt Solaris 10 (x86-32)


    1
    Chuẩn bị bộ cài
    Trang oracle.com
    2
    Tạo VMWare
    Dùng VMWare WS > 7.0 tạo Solaris 64 bit

      Bài viết này cung cấp một hướng dẫn bằng hình ảnh để thực hiện cài đặt mặc định của  Solaris 10 (x86-32) . Việc cài đặt khá đơn giản, nhưng không đơn giản và mất nhiều thời gian hơn so với hầu hết các cài đặt Linux hiện đại.

Quy trình tắt Firewall, SELinux trên Linux

Firewall

Để tắt tường lửa, hãy làm như sau với tư cách là người dùng "root".

• Với Linux 6:

[root@dbn01 ~]# service iptables stop

[root@dbn01 ~]# chkconfig iptables off

[root@dbn01 ~]# service iptables status

iptables: Firewall is not running.

• Với Linux 7:

[root@dbn01 ~]# systemctl stop firewalld

[root@dbn01 ~]# systemctl disable firewalld

Quy trình cài đặt Oracle Linux 7 (OL7)

Bài viết này cung cấp một hướng dẫn bằng hình ảnh để thực hiện cài đặt cơ bản của  Oracle Linux 7 (OL7) .
  • Cài đặt cơ bản
  • Cấu hình mạng
  • Tùy biến phần mềm
  • SELinux
  • Firewall
  • SSH

Quy trình Oracle Database 11gR2 trên Oracle Linux 7

Oracle Linux 7 là một bản phát hành sản xuất, nhưng Cơ sở dữ liệu Oracle chỉ được hỗ trợ trên nó từ Cơ sở dữ liệu Oracle 11g (11.2.0.4) trở đi. Không nên sử dụng cài đặt này cho một hệ thống thực khi sử dụng các phiên bản cơ sở dữ liệu trước 11.2.0.4.
Bài viết này mô tả việc cài đặt Cơ sở dữ liệu Oracle 11g Phiên bản 2 (11.2.0.4) 64 bit trên Oracle Linux 7 (OL7) 64 bit. Bài viết này dựa trên cài đặt máy chủ với tối thiểu 2G trao đổi và Linux an toàn được đặt thành cho phép.  
  • Tải chương trinh
  • Giải nén tập tin
  • Tập tin máy chủ
  • Điều kiện tiên quyết cài đặt của Oracle
    • Cài đặt tự động
    • Cài đặt thủ công
    • Cài đặt bổ sung
    • Cài đặt
    • Sau cài đặt

    Quy trình cài đặt Oracle Database 11gR2 trên Solaris 10

    Cài đặt cơ sở dữ liệu Oracle 11g Phiên bản 2 trên Solaris 10 (x86-64)
    Trong bài viết này, tôi sẽ mô tả việc cài đặt Cơ sở dữ liệu Oracle 11g Phiên bản 2 (11.2.0.2) trên Solaris 10 (x86-64). Bài viết dựa trên cài đặt máy chủ mặc định như được hiển thị  ở đây Cài đặt thay thế có thể yêu cầu một quy trình thiết lập khác nhau.
    • Tải chương trinh
    • Giải nén tập tin
    • Tập tin máy chủ
    • Đặt tham số hạt nhân
    • Thiết lập
    • Cài đặt
    • Sau cài đặt

    Lưu ý khi thêm cột, drop cột bảng dữ liệu cực lớn, core, online 24/7

    Với các bảng dữ liệu lớn, core của hệ thống với hàng trăm, nghìn procedure, function, pacakge liên quan sẽ INVALID khi ALTER TABLE, nếu không LOCK hết các account  của ứng dụng và người dùng lại thì không thể thêm cột mới hay drop cột đi được. Nhưng khi LOCK các account của ứng dụng và người dùng thì thời gian thực hiện sẽ NHƯ THẾ NÀO? Mình có bài lab thực tế muốn chia sẻ với các bạn để các bạn tham khảo khi thực hiện với dữ liệu lớn của mình:

    Thứ Sáu, 8 tháng 11, 2019

    Khi nào cần tạo index trong cơ sở dữ liệu Oracle cũng như cơ sở dữ liệu khác?

    1. Khi nào cần tạo index

    Để phát huy hiệu quả của việc sử dụng index, ta tạo index cho từng cột hoặc nhóm cột tham gia trong mệnh đề WHERE của câu lệnh truy vấn (chú ý điều kiện WHERE này phải hay dùng, ít dùng thì không nên tạo vì sẽ làm chậm câu lệnh DML và tốn dung lượng lưu trữ)

    Thứ Năm, 7 tháng 11, 2019

    Mount NFS 1 phân vùng từ Solaris sang Linux hoặc Solaris khác


    Mount NFS 1 phân vùng t Solaris sang Linux hoc Solaris khác


    1. Source (Solaris1, UFS,):
    • Mount phân vùng ufs /s01 thông tin trong /etc/vfstab
      /dev/md/dsk/d10 /dev/md/rdsk/d10        /bk  ufs     2       yes     -
    • Share NFS quyen read write
    #  share -F nfs -o rw /bk
    (192.168.1.25 là IP ca máy Solaris1)

    Hướng dẫn giám sát và vận hành Oracle DataGuard

    I. Kiểm tra trạng thái DG
    Sử dụng Oracle Broker kiểm tra trạng thái cấu hình DataGuard
    dgmgrl /
    show configuration;
    show database verbose db_name

    --Kiểm tra apply lag trên Standby
    SELECT NAME, VALUE FROM V$DATAGUARD_STATS WHERE NAME='apply lag';

    --Kiểm tra trạng thái các process sử dụng cho đồng bộ dữ liệu trên Standby

    ALTER SESSION SET nls_date_format='DD-MON-YYYY HH24:MI:SS'

    SELECT PROCESS, CLIENT_PROCESS, THREAD#, SEQUENCE#, STATUS, BLOCK#, BLOCKS FROM GV$MANAGED_STANDBY order by PROCESS, thread#, SEQUENCE#;

    ĐỌC NHIỀU

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