Thứ Sáu, 31 tháng 8, 2018

Thay đổi IP, hostname trên Solaris

  1. Assume the Primary Administrator role, or become superuser.
    The Primary Administrator role includes the Primary Administrator profile. To create the role and assign the role to a user, see Chapter 2, Working With the Solaris Management Console (Tasks), in System Administration Guide: Basic Administration.

Xử lý lỗi GoldenGate bị ABEND khi instance down đột ngột

Troubleshoot GoldenGate Process when Instance down suddenly

Mục đích: Khắc phục lỗi tiến trình GoldenGate bị ABEND khi instance shutdown đột ngột
1. Errors message from $GGATE/ggserr.log

2018-08-30 15:19:41  WARNING OGG-00715  Oracle GoldenGate Capture for Oracle, ext1.prm:  [Thread #3] Purging transaction (transaction id: 3607.7.337705, start time: 2018-08-30 15:33:03, start seqno: 85665, start RBA: 2920625168).
2018-08-30 15:19:41  WARNING OGG-00712  Oracle GoldenGate Capture for Oracle, ext1.prm:  Updating I/O checkpoint after purging orphaned transactions on thread 3 with current position (Seq#: 85669, RBA: 615293852).
2018-08-30 15:19:42  WARNING OGG-00723  Oracle GoldenGate Capture for Oracle, consext5.prm:  Record with class# 7092, slt# 12, at seqno 85669, rba 715072016 SCN 2867.4219647111 (12317890884743) has secondary transaction ID that is du
plicate of existing open uncommitted transaction.
.
 ....
2018-08-30 15:20:53  ERROR   OGG-00446  Oracle GoldenGate Capture for Oracle, EXT2.prm:  Could not find archiv
ed log for sequence 87475 thread 1 under default destinations SQL <SELECT  name    FROM v$archived_log   WHERE se
quence# = :ora_seq_no AND         thread# = :ora_thread AND         resetlogs_id = :ora_resetlog_id AND         a
rchived = 'YES' AND         deleted = 'NO>, error retrieving redo file name for sequence 87475, archived = 1, use
_alternate = 0Not able to establish initial position for sequence 87475, rba 1795950096.
2018-08-30 15:20:53  ERROR   OGG-01668  Oracle GoldenGate Capture for Oracle,DP2.prm:  PROCESS ABENDING.

Cài đặt VMWare Tools trên máy ảo Solaris

Đối với các máy ảo Solaris, bạn tự cài đặt hoặc nâng cấp VMware Tools bằng cách sử dụng dòng lệnh.
Điều kiện tiên quyết
  • Bật nguồn máy ảo.
  • Xác minh rằng hệ điều hành client đang chạy.
  • Vì trình cài đặt VMware Tools được viết bằng Perl, hãy xác minh rằng Perl đã được cài đặt trong hệ điều hành khách.

Thứ Năm, 30 tháng 8, 2018

Tạo user ftp trên Solaris, AIX, Linux

1. Thêm người dùng chỉ có thể dùng ftp
    #  useradd ftp01
    # passwd ftp01

Quy trình khôi phục Point-in-Time Oracle Database

Bạn có thể thực hiện khôi phục tại thời điểm do máy chủ quản lý bằng các bước sau. Cơ sở dữ liệu phải ở chế độ ARCHIVELOG.
1. Xác định mục tiêu khôi phục: Có thể là theo thời gian, SCN, điểm khôi phục hoặc số số sequence. Ví dụ: nếu bạn biết rằng một số giao dịch nhầm (truncate hoặc drop table ...purge) đã được thực thi vào lúc 3:00 PM ngày hôm qua, thì bạn có thể chọn 2:59 PM ngày hôm qua làm thời điểm khôi phục mục tiêu. 

Quy trình khôi phục cơ sở dữ liệu Oracle 11g sau thảm họa

Khôi phục thảm họa bao gồm khôi phục và khôi phục cơ sở dữ liệu đích sau khi mất toàn bộ cơ sở dữ liệu đích, tất cả các control file hiện tại, tất cả các online redo log file, tất cả các pfile và cơ sở dữ liệu recovery catalog (nếu có).
Để thực hiện khắc phục thảm họa, các bản sao lưu sau được yêu cầu tối thiểu:
• Sao lưu các tệp dữ liệu (data file)
• Archived redo log tương ứng được tạo sau thời gian sao lưu
• Ít nhất một autobackup của tệp điều khiển (control file)

Quy trình khôi phục cơ sở dữ liệu Oracle 11g sang host mới

Bài viết hướng dẫn tạo bản copy của CSDL trên host mới. Trong trường hợp này DBID của CSDL trên host mới sẽ giống với trên host cũ. Nhưng nếu mục tiêu là tạo ra bản copy mới của cơ sở dữ liệu(CSDL) dùng RMAN DUPLICATE; điều này sẽ thay đổI DBID của CSDL trên host mới.
Trong ví dụ này, CSDL ban đầu tên là ORCL chạy trên máy OEL1. Tôi sẽ thực hiện backup trên máy OEL1, copy bản backup sang máy OEL2; thực hiện restore và recover trên máy OEL2.
1. Trên máy OEL1 (máy nguồn)
1.1 Thực hiện backup Parameter file, Control files và toàn bộ Data files.
[oracle@oel1 ~]$ rman target /
Recovery Manager: Release 11.1.0.6.0 - Production on Sun Apr 15 08:19:26 2012
Copyright (c) 1982, 2007, Oracle.  All rights reserved.
connected to target database: ORCL (DBID=1283774808)
RMAN> backup database;

Cài đặt Oracle Grid Infrastructure (Clusterware, ASM) 11g trên VMWare Workstation


1. Tạo Groups và Users
-- User oracle cài grid chung với Oracle DB
# groupadd -g 1000 oinstall
# groupadd -g 1031 dba
# useradd -u 1101 -g oinstall -G dba oracle
# mkdir -p  /u01/app/11.2.0/grid
# mkdir -p /u01/app/oracle
# chown -R oracle:oinstall /u01
# chmod -R 775 /u01/

Cấu hình audit FGA trên Oracle database

Mục đích: Với DB lớn, chưa được trang bị giải pháp chuyên dụng như Imeprva, Oracle Database Fiewall and Audit Vault thì làm thế nào chúng ta có thể audit được các tác động của người dùng truy cập trái phép mà ít ảnh hưởng đến performance của database. Giải pháp là sử dụng FGA của Oracle. Chi tiết thủ tục như bên dưới:

Cấu hình Audit DDL Log Oracle Database

Mục đích: Lưu log các thao tác DDL (drop table, create table, drop procedure, drop package,...) để truy vết các thao tác của DBA hay quản trị ứng dụng (có dùng user DB) làm sai, nhầm.

Làm thế nào để khôi phục database Oracle khi UNDO TABLESPACE bị corrupt

Có nhiều cuộc gọi đến cho tôi yêu cầu hỗ trợ về CSDL Oracle trong đó bao gồm cả những lỗi cơ bản và khó khăn. Có rất nhiều cầu hỏi trùng lặp nhau cho những lỗi trên và tôi nghĩ cần phải lập ra một forum chuyên sâu về mảng hệ thống CSDL Oracle để có thể chia sẻ cho các bản những kinh nghiệm mà tôi có được
Là người từng tham gia vào các dự án triển khai lớn cho hàng không và ngân hàng, tôi có được những kinh nghiệm sâu về hệ thống CSDL qua những lần trắng đêm phục hồi, sửa lỗi các các hệ thống CSDL của các ngân hàng, DBA đã trở thành một nghề của tôi từ đó…

Recover dữ liệu do commit nhầm

Mục đích: Cần restore lại dữ liệu đã commit

Chú ý: Cần đảm bảo restore gần nhất vì dữ liệu đã commit lưu trong tablespace UNDOTBS hữu hạn thời gian (default 900s ~ 15 phút)

1. Ứng dụng chạy nhầm
UPDATE com_owner.table1
         SET PROCESS_DATE = TO_DATE (p_process_date, 'DD/MM/YYYY HH24:MI:SS'),
             RESULT_CONTENT = '<br/><b>DDH:</b>' ||p_content,
             dep_id = p_dep_id
             WHERE p_id = p_id; -- 0 = 0
Commit;
--> Update toàn bộ dữ liệu của bảng và đã commit
Yêu cầu bên UD cung cấp khoảng thời điểm cập nhật sai dữ liệu (VD 16h34')

Khắc phục corrupt block Oracle Database

CHECK

--Results of the LIST FAILURE, VALIDATE, or BACKUP ... VALIDATE command
RMAN> backup validate check logical database;

Back up a Database in NOARCHIVELOG Mode

Nếu cơ sở dữ liệu chạy ở chế độ NOARCHIVELOG, thì bản sao lưu cơ sở dữ liệu hợp lệ duy nhất là
sao lưu phù hợp. Để sao lưu được nhất quán, cơ sở dữ liệu phải được gắn sau một
tắt máy nhất quán. Không cần phục hồi sau khi khôi phục lại bản sao lưu.
Để tạo một bản sao lưu cơ sở dữ liệu nhất quán:

Tăng tốc độ backup incremental đến 10 lần với Block change tracking

Trong bài viết này tôi sẽ hướng dẫn bạn cách kiểm tra và quy trình 5 bước để enable block change tracking giúp tăng tốc độ backup incremental lên đến 10 lần

Thứ Tư, 29 tháng 8, 2018

Hướng dẫn cấu hình tham số backup RMAN


RMAN mặc định được cấu hình sẵn 1 số tham số như sau (có đuôi # default phía sau)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
$ rman target /

Recovery Manager: Release 11.2.0.4.0 - Production on Thu Sep 24 10:41:24 2015

Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.

connected to target database: ORCLDB01 (DBID=448438605)

RMAN> show all;  

using target database control file instead of recovery catalog
RMAN configuration parameters for database with db_unique_name ORCLDB01 are:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
CONFIGURE BACKUP OPTIMIZATION OFF; # default
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE MAXSETSIZE TO UNLIMITED; # default
CONFIGURE ENCRYPTION FOR DATABASE OFF; # default
CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default
CONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE ; # default
CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default
CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/u01/app/oracle/product/11.2.0/db_1/dbs/snapcf_orcldb01.f'; # default

RMAN>

Tạo giao diện với VNC, MobiXterm trên Solaris, AIX, Linux

Mục đích: Tạo giao diện để cài đặt Oracle DB, tạo DB,...

Tạo firewall chặn user theo IP trên Oracle Database

User của bạn truy cập vào cơ sở dữ liệu (CSDL) đang không được giới hạn theo IP? Bất kỳ IP nào cũng có thể truy cập vào CSDL của bạn? Bạn cần một giải pháp (có thể coi là firewall) để chặn các user truy cập theo đúng IP.

Quy trình chuyển Oracle Cluster Registry hoặc Voting Disks Oracle RAC 11g tới phân vùng file system khác


Lưu ý quan trọng:  Bài đăng này chỉ áp dụng cho Cơ sở dữ liệu Oracle 11gR2 trở đi. Các bước cho 11gR1 và các phiên bản trước đó là khác nhau. Ngoài ra các bước này dành cho các đĩa OCR và voting disk được lưu trữ trên  hệ thống cluster file được chứng nhận . Nếu bạn đang sử dụng thiết bị ASM hoặc Raw để lưu trữ các tệp này thì các tác vụ chuẩn bị ban đầu có thể khác
Xin lưu ý rằng Oracle Cluster yêu cầu duy trì trong suốt quá trình hoạt động này. Để an toàn hơn, chúng tôi đã tắt cơ sở dữ liệu trong thời gian này nhưng điều này là không bắt buộc. Các cụm đã được lên và chạy trong hoạt động này.

Chuyển OCR, Voting disk ASM trong Oracle Clusterware 11g

I. TAO DISKGROUP CRS_NEW


1. Yêu cu disk

-- B 69 Cylinders     đu tiên trong solaris vì ghi vào b li
Total disk cylinders available: 2728 + 2 (reserved cylinders)

Part      Tag    Flag     Cylinders        Size            Blocks
  0       root    wm       0 -   34      131.25MB    (35/0/0)     268800
  1       swap    wu      35 -   69      131.25MB    (35/0/0)     268800
  2     backup    wu       0 - 2727        9.99GB    (2728/0/0) 20951040
  3 unassigned    wm       0               0         (0/0/0)           0
  4 unassigned    wm       0               0         (0/0/0)           0
  5 unassigned    wm       0               0         (0/0/0)           0
  6        usr    wm      70 - 2727        9.73GB    (2658/0/0) 20413440
  7 unassigned    wm       0               0         (0/0/0)           0

Hướng dẫn quản lý ASM Diskgroup

1.      Format phân vùng mới cho ASM
--Phân vùng u02 định dạng cho ASM.

Part      Tag    Flag     Cylinders        Size            Blocks
  0       root    wm       0 -   34      131.25MB    (35/0/0)     268800
  1       swap    wu      35 -   69      131.25MB    (35/0/0)     268800
  2     backup    wu       0 - 2727        9.99GB    (2728/0/0) 20951040
  3 unassigned    wm       0               0         (0/0/0)           0
  4 unassigned    wm       0               0         (0/0/0)           0
  5 unassigned    wm       0               0         (0/0/0)           0
  6        usr    wm      70 - 2727        9.73GB    (2658/0/0) 20413440
  7 unassigned    wm       0               0         (0/0/0)           0

Thủ tục thêm đĩa vào diskgroup DATA trong AIX trong ASM

--Đổi tên giữa 2 hdisk: rendev -l hdisk33 -n hdisk58

1. Cấu hình

-- Thuc hien tren ca 2 node, root
lspath -l hdisk25

lsattr -El hdisk25

chdev -l hdisk25 -a reserve_policy=no_reserve

chdev -l hdisk25 -a algorithm=round_robin

chdev -l hdisk25 -a queue_depth=32

lsattr -El hdisk25

1ls -l /dev/rhdisk25

chown oracle.oinstall /dev/rhdisk25 (khi cài riêng grid có thể gán quyền là chown grid.asmadmin /dev/rhdisk25)

chmod 660 /dev/rhdisk25

ls -l /dev/rhdisk25

crw-rw----    1 oracle oinstall      24, 64 Nov 30 17:57 /dev/rhdisk25
(hoặc crw-rw----    1 grid asmadmin      24, 64 Nov 30 17:57 /dev/rhdisk25)

Quy trình thêm đĩa vào diskgroup trong ASM trên hệ điều hành Solaris

Restart, shutdown Solaris 10



Lệnh
Diễn giải
Reboot
# init 6
(tat service sau do restart)

# reboot
reboot -- -r
Reboot luôn mà không tắt service (bật xong dễ chết service)

# shutdown -r now
shutdown -y -i6 -g0
Xem xét

oracle$ last reboot
reboot    system boot                   Wed May 30 23:03
reboot    system down                   Wed May 30 22:47
reboot    system boot                   Thu Apr 12 10:57
reboot    system down                   Thu Apr 12 10:09
reboot    EE                            Wed Jan 28 14:21 - down  (17605+20:

Shutdown
Init 5
(tat service sau do shutdown)

#shutdown -i0 -g0 -y
Xem xét

poweroff
~ Rút phích điện

halt


#shutdown -h now
#shutdown now
Reboot luôn mà không tắt service

Cài đặt gói trong Solaris


Check
Check to see which of the required packages are already installed.
# pkginfo -i SUNWarc SUNWbtool SUNWhea SUNWlibC SUNWlibm SUNWlibms SUNWsprot \
  SUNWtoo SUNWi1of SUNWi1cs SUNWi15cs SUNWxwfnt SUNWcsl
system      SUNWarc   Lint Libraries (usr)
system      SUNWbtool CCS tools bundled with SunOS
system      SUNWcsl   Core Solaris, (Shared Libs)
system      SUNWhea   SunOS Header Files
system      SUNWi1of  ISO-8859-1 (Latin-1) Optional Fonts
system      SUNWlibC  Sun Workshop Compilers Bundled libC
system      SUNWlibm  Math & Microtasking Library Headers & Lint Files (Usr)
system      SUNWlibms Math & Microtasking Libraries (Usr)
system      SUNWsprot Solaris Bundled tools
system      SUNWtoo   Programming Tools
system      SUNWxwfnt X Window System platform required fonts
ERROR: information for "SUNWi1cs" was not found
ERROR: information for "SUNWi15cs" was not found
#
From <https://oracle-base.com/articles/11g/oracle-db-11gr2-installation-on-solaris-10>

# pkginfo -x <package>

# pkginfo |grep pkgutil


# pkgchk -l <package_name>
# pkgchk -l <package_name> | grep Pathname  # lists files only.
# pkgchk -d <name> -l
Cài đặt gói
Add the "SUNWi1cs" and "SUNWi15cs" packages using the "pkgadd" command.
# pkgadd -d /cdrom/sol_10_910_x86/Solaris_10/Product SUNWi1cs SUNWi15cs

#pkgadd -d  /cdrom/solaris10/SFWsnort
Xóa gói
# pkgrm SFWsnort

Cài đặt patch trên Solaris 10

Dưới đây là các patch yêu cầu cho Oracle Database 11g Release 2 (11.2) trên Oracle Solaris 10:

Đặt lại mật khẩu ASMSNMP trên ASM instance

Có 2 cách thực hiện


1)  Sử dụng lệnh Alter User

$ export ORACLE_SID=+ASM
$ . oraenv
$ sqlplus / as sysasm

SQL> alter user asmsnmp identified by <password>;
User altered.

2)  Sử dụng ASMCMD (môi trường RAC sẽ update toàn bộ các node)

orapwusr --modify --password asmsnmp

[oracle@host01 ~]$ asmcmd -p
ASMCMD [+] > lspwusr
Username sysdba sysoper sysasm
     SYS   TRUE    TRUE   TRUE
 ASMSNMP   TRUE   FALSE  FALSE




ĐỌC NHIỀU

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