Thứ Tư, 9 tháng 12, 2020

Cài đặt Oracle Database 11gR2 RAC trên Oracle Linux 6.3 sử dụng VirtualBox

Bài viết này mô tả cài đặt Cơ sở dữ liệu Oracle 11g phiên bản 2 (11.2.0.3 64-bit) RAC trên Linux (Oracle Linux 6.3 64-bit) sử dụng VirtualBox (4.2.6) mà sử dụng virtual box disk làm đĩa chia sẻ chung (không cần SAN chung)

  • Giới thiệu
  • Tải chương trinh
  • Cài đặt VirtualBox
  • Thiết lập máy ảo
  • Cài đặt hệ điều hành 
  • Điều kiện tiên quyết khi cài đặt Oracle
    • Thiết lập tự động
    • Thiết lập thủ công
    • Thiết lập bổ sung
  • Cài đặt bổ sung 
  • Tạo đĩa dùng chung (shared disks)
  • Sao chép (clone) máy ảo
  • Cài đặt Grid Infrastructure
  • Cài đặt cơ sở dữ liệu
  • Kiểm tra trạng thái của RAC

Giới thiệu

Một trong những trở ngại lớn nhất ngăn cản mọi người thiết lập môi trường RAC thử nghiệm là yêu cầu về phân vùng lưu trữ phải được chia sẻ bởi các node trong RAC. Trong môi trường thực tế, lưu trữ chia sẻ thường được cung cấp bởi SAN hoặc thiết bị NAS cao cấp, nhưng cả hai tùy chọn này đều rất tốn kém đôi lúc nó bất khả thi với những người học sinh, sinh viên muốn làm LAB. Một giải pháp thay thế rẻ hơn là sử dụng FireWire để cho phép hai máy truy cập vào (các) đĩa giống nhau, nhưng điều đó vẫn tốn tiền và yêu cầu có hai máy chủ. Tùy chọn thứ ba là sử dụng ảo hóa để giả lập vùng đĩa chia sẻ.

Sử dụng VirtualBox, bạn có thể chạy nhiều Máy ảo (VM) trên một máy chủ duy nhất, cho phép bạn chạy cả hai nút RAC trên một máy duy nhất. Ngoài ra, nó cho phép bạn thiết lập các đĩa ảo dùng chung, vượt qua trở ngại về dung lượng lưu trữ dùng chung đắt tiền.

Mô hình kết nối chuẩn, dự phòng:


Tải chương trinh

Tải xuống phần mềm sau.

Cài đặt VirtualBox

Cài đặt VirtualBox trên PC Windows 10

Thiết lập máy ảo

Bây giờ chúng ta cần hai nút RAC ảo. Để tiết kiệm thời gian cài đặt 1 máy ảo sau đó clone ra.

Khởi động VirtualBox và nhấp vào nút "New" trên thanh công cụ. Nhập tên "ol6-112-rac1", Hệ điều hành "Linux" và Phiên bản "Oracle (64 bit)", sau đó nhấp vào nút "Tiếp theo".

 


Nhập "4096" làm kích thước bộ nhớ, sau đó nhấp vào nút "Next".


Chấp nhận tùy chọn mặc định để tạo đĩa cứng ảo mới bằng cách nhấp vào nút "Create".


Chấp nhận loại tệp ổ cứng mặc định bằng cách nhấp vào nút "Next".


Chấp nhận tùy chọn "Dynamically Allocated" bằng cách nhấp vào nút "Next".



Chấp nhận vị trí mặc định và đặt kích thước thành "30G", sau đó nhấp vào nút "Create". Nếu có thể bạn trải đều trên các đĩa ảo lên các đĩa vật lý khác nhau, điều đó sẽ cải thiện hiệu suất.


Máy ảo "ol6-112-rac1" sẽ xuất hiện trên phía bên trái. Cuộn xuống tab "Setting" ở bên phải và nhấp vào liên kết "Network".


Đảm bảo rằng "Adapter 1" được bật, đặt thành "Bridged Adapter", sau đó nhấp vào tab "Adapter 2".


Đảm bảo rằng "Adapter 2" được bật, đặt thành "Bridged Adapter" hoặc "Internal Network", sau đó nhấp vào phần "System".


Di chuyển "Đĩa cứng" lên đầu thứ tự khởi động và bỏ chọn tùy chọn "Floppy", sau đó nhấp vào nút "OK".


Máy ảo hiện đã được cấu hình để chúng ta có thể bắt đầu cài đặt hệ điều hành .

Cài đặt hệ điều hành

Với máy ảo mới được đánh dấu, hãy nhấp vào nút "Bắt đầu" trên thanh công cụ. Trên màn hình "Select start-updisk", chọn hình ảnh ISO của Oracle Linux có liên quan và nhấp vào nút "Start".


Cửa sổ giao diện điều khiển kết quả sẽ chứa màn hình khởi động Oracle Linux.


Tiếp tục cài đặt Oracle Linux 6 như bạn làm đối với máy chủ cơ bản. Có thể tìm thấy hướng dẫn bằng hình ảnh chung về cài đặt tại đây . Cụ thể hơn, đó phải là cài đặt máy chủ có tối thiểu 4G + swap, tắt tường lửa, SELinux được đặt thành cho phép và các nhóm gói sau được cài đặt:

  • Base System > Base
  • Base System > Client management tools
  • Base System > Compatibility libraries
  • Base System > Hardware monitoring utilities
  • Base System > Large Systems Performance
  • Base System > Network file system client
  • Base System > Performance Tools
  • Base System > Perl Support
  • Servers > Server Platform
  • Servers > System administration tools
  • Desktops > Desktop
  • Desktops > Desktop Platform
  • Desktops > Fonts
  • Desktops > General Purpose Desktop
  • Desktops > Graphical Administration Tools
  • Desktops > Input Methods
  • Desktops > X Window System
  • Applications > Internet Browser
  • Development > Additional Development
  • Development > Development Tools

Để phù hợp với phần còn lại của bài viết, thông tin sau nên được đặt trong quá trình cài đặt:

  • hostname: ol6-112-rac1.localdomain
  • IP Address eth0: 192.168.0.111 (public address)
  • Default Gateway eth0: 192.168.0.1 (public address)
  • IP Address eth1: 192.168.1.111 (private address)
  • Default Gateway eth1: none

Điều kiện tiên quyết khi cài đặt Oracle

Thực hiện Thiết lập Tự động hoặc Thiết lập Thủ công để hoàn thành các điều kiện tiên quyết cơ bản. Cài đặt bổ sung là bắt buộc cho tất cả các cài đặt.

Thiết lập tự động

Nếu bạn định sử dụng gói "oracle-rdbms-server-11gR2-preinstall" để thực hiện tất cả thiết lập điều kiện tiên quyết của mình, hãy làm theo hướng dẫn tại http://public-yum.oracle.com để thiết lập kho lưu trữ yum cho OL, sau đó thực hiện lệnh sau.

# yum install oracle-rdbms-server-11gR2-preinstall

Tất cả các điều kiện tiên quyết cần thiết sẽ được thực hiện tự động.

Nó có lẽ cũng đáng để thực hiện một bản cập nhật đầy đủ, nhưng điều này là không cần thiết.

# yum update

Thiết lập thủ công

Nếu bạn chưa sử dụng gói "oracle-rdbms-server-11gR2-preinstall" để thực hiện tất cả các điều kiện tiên quyết, bạn sẽ cần thực hiện thủ công các tác vụ thiết lập sau.

Ngoài cài đặt hệ điều hành cơ bản, các gói sau phải được cài đặt khi đăng nhập với tư cách người dùng root. Điều này bao gồm các phiên bản 64-bit và 32-bit của một số gói. Các gói được nhận xét là những gói đã được cài đặt nếu bạn đã thực hiện theo lựa chọn gói được đề xuất.

# From Oracle Linux 6 DVD
cd /media/cdrom/Server/Packages
#rpm -Uvh binutils-2.*
#rpm -Uvh compat-libstdc++-33*
#rpm -Uvh elfutils-libelf-0.*
#rpm -Uvh libaio-0.*
rpm -Uvh libaio-devel-0.*
#rpm -Uvh sysstat-9.*
#rpm -Uvh glibc-2.*
#rpm -Uvh glibc-common-2.*
#rpm -Uvh glibc-devel-2.* glibc-headers-2.*
rpm -Uvh ksh-2*
#rpm -Uvh make-3.*
#rpm -Uvh libgcc-4.*
#rpm -Uvh libstdc++-4.*
rpm -Uvh libstdc++-4.*.i686*
#rpm -Uvh libstdc++-devel-4.*
#rpm -Uvh gcc-4.*x86_64*
#rpm -Uvh gcc-c++-4.*x86_64*
#rpm -Uvh --allfiles elfutils-libelf-0*x86_64* elfutils-libelf-devel-0*x86_64*
rpm -Uvh elfutils-libelf-0*i686* elfutils-libelf-devel-0*i686*
rpm -Uvh libtool-ltdl*i686*
rpm -Uvh ncurses*i686*
rpm -Uvh readline*i686*
rpm -Uvh unixODBC*
cd /
eject

Thêm hoặc sửa đổi các dòng sau vào tệp "/etc/sysctl.conf".

s.aio-max-nr = 1048576
fs.file-max = 6815744
#kernel.shmall = 2097152 
#kernel.shmmax = 1054504960
kernel.shmmni = 4096
# semaphores: semmsl, semmns, semopm, semmni
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default=262144
net.core.rmem_max=4194304
net.core.wmem_default=262144
net.core.wmem_max=1048586

Chạy lệnh sau để thay đổi các tham số hạt nhân hiện tại.

/sbin/sysctl -p

Thêm các dòng sau vào tệp "/etc/security/limits.conf".

oracle              soft    nproc   2047
oracle              hard    nproc   16384
oracle              soft    nofile  4096
oracle              hard    nofile  65536
oracle              soft    stack   10240

Thêm các dòng sau vào tệp "/etc/pam.d/login", nếu nó chưa tồn tại.

session    required     pam_limits.so

Tạo nhóm và người dùng mới.

groupadd -g 1000 oinstall
groupadd -g 1200 dba
useradd -u 1100 -g oinstall -G dba oracle
passwd oracle

Thiết lập bổ sung

Thực hiện các bước sau trong khi đăng nhập vào máy ảo "ol6-112-rac1" với tư cách là người dùng root.

Đặt mật khẩu cho người dùng "oracle".

passwd oracle

Cài đặt gói sau từ đĩa Oracle Grid sau khi bạn đã xác định các nhóm.

cd /your/path/to/grid/rpm
rpm -Uvh cvuqdisk*

Nếu bạn không sử dụng DNS, tệp "/etc/hosts" phải chứa thông tin sau.

127.0.0.1       localhost.localdomain   localhost
# Public
192.168.0.111   ol6-112-rac1.localdomain        ol6-112-rac1
192.168.0.112   ol6-112-rac2.localdomain        ol6-112-rac2
# Private
192.168.1.111   ol6-112-rac1-priv.localdomain   ol6-112-rac1-priv
192.168.1.112   ol6-112-rac2-priv.localdomain   ol6-112-rac2-priv
# Virtual
192.168.0.113   ol6-112-rac1-vip.localdomain    ol6-112-rac1-vip
192.168.0.114   ol6-112-rac2-vip.localdomain    ol6-112-rac2-vip
# SCAN
192.168.0.115   ol6-112-scan.localdomain ol6-112-scan
192.168.0.116   ol6-112-scan.localdomain ol6-112-scan
192.168.0.117   ol6-112-scan.localdomain ol6-112-scann

Ngay cả với địa chỉ SCAN được xác định trong tệp máy chủ, nó vẫn cần được xác định trên DNS để luân chuyển giữa 3 địa chỉ trên cùng một mạng con như các IP công cộng. Cấu hình DNS được mô tả ở đây . Phải nói rằng, tôi thường bao gồm mọi thứ ngoại trừ các mục SCAN khi sử dụng DNS.

Sửa đổi tệp "/etc/security/limits.d/90-nproc.conf" như được mô tả bên dưới. Xem Ghi chú MOS [ID 1487773.1]

# Change this
*          soft    nproc    1024

# To this
* - nproc 16384

Thay đổi cài đặt của SELinux thành cho phép bằng cách chỉnh sửa tệp "/etc/selinux/config", đảm bảo SELINUX được đặt như sau.

SELINUX=permissive

Nếu bạn đã bật tường lửa Linux, bạn cần phải tắt hoặc cấu hình nóSau đây là một ví dụ về vô hiệu hóa tường lửa.

# service iptables stop
# chkconfig iptables off

Định cấu hình NTP hoặc đảm bảo rằng nó không được định cấu hình để Dịch vụ đồng bộ hóa thời gian cụm Oracle (ctssd) có thể đồng bộ hóa thời gian của các nút RAC. Nếu bạn muốn phân giải cấu hình NTP, hãy làm như sau.

# service ntpd stop
Shutting down ntpd:                                        [  OK  ]
# chkconfig ntpd off
# mv /etc/ntp.conf /etc/ntp.conf.orig
# rm /var/run/ntpd.pid

Nếu bạn muốn sử dụng NTP, bạn phải thêm tùy chọn "-x" vào dòng sau trong tệp "/etc/sysconfig/ntpd".

OPTIONS="-x -u ntp:ntp -p /var/run/ntpd.pid"

Sau đó khởi động lại NTP.

# service ntpd restart

Tạo các thư mục mà phần mềm Oracle sẽ được cài đặt.

mkdir -p  /u01/app/11.2.0.3/grid
mkdir -p /u01/app/oracle/product/11.2.0.3/db_1
chown -R oracle:oinstall /u01
chmod -R 775 /u01/

Đăng nhập với tư cách người dùng "oracle" và thêm các dòng sau vào cuối tệp "/home/oracle/.bash_profile".

# Oracle Settings
TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR

ORACLE_HOSTNAME=ol6-112-rac1.localdomain; export ORACLE_HOSTNAME
ORACLE_UNQNAME=RAC; export ORACLE_UNQNAME
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
GRID_HOME=/u01/app/11.2.0.3/grid; export GRID_HOME
DB_HOME=$ORACLE_BASE/product/11.2.0.3/db_1; export DB_HOME
ORACLE_HOME=$DB_HOME; export ORACLE_HOME
ORACLE_SID=RAC1; export ORACLE_SID
ORACLE_TERM=xterm; export ORACLE_TERM
BASE_PATH=/usr/sbin:$PATH; export BASE_PATH
PATH=$ORACLE_HOME/bin:$BASE_PATH; export PATH

LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH

alias grid_env='. /home/oracle/grid_env'
alias db_env='. /home/oracle/db_env'

Tạo một tệp có tên "/home/oracle/grid_env" với nội dung sau.

ORACLE_SID=+ASM1; export ORACLE_SID
ORACLE_HOME=$GRID_HOME; export ORACLE_HOME
PATH=$ORACLE_HOME/bin:$BASE_PATH; export PATH

LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH

Tạo một tệp có tên "/home/oracle/db_env" với nội dung sau.

ORACLE_SID = RAC1; export ORACLE_SID
ORACLE_HOME = $ DB_HOME; export ORACLE_HOME
PATH = $ ORACLE_HOME/bin: $ BASE_PATH; export PATH
LD_LIBRARY_PATH = $ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
CLASSPATH = $ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jl

Khi "/home/oracle/.bash_profile" đã được chạy, bạn sẽ có thể chuyển đổi giữa các môi trường như sau.

$ grid_env
$ echo $ORACLE_HOME
/u01/app/11.2.0.3/grid
$ db_env
$ echo $ORACLE_HOME
/u01/app/oracle/product/11.2.0.3/db_1
$

Khởi động lại máy chủ:

# shutdown -r now

Cài đặt bổ sung

Nhấp vào tùy chọn trình đơn "Devices > Install Guest Additions" ở đầu màn hình VM. Nếu bạn có tùy chọn tự động chạy, hãy lấy nó. Nếu không, hãy chạy các lệnh sau.

cd /media/VBOXADDITIONS_4.2.6_82870
sh ./VBoxLinuxAdditions.run

Máy ảo sẽ cần được khởi động lại để các phần bổ sung được sử dụng đúng cách. Phần tiếp theo yêu cầu tắt máy nên không cần khởi động lại thêm vào lúc này.

Tạo đĩa dùng chung

Tắt máy ảo "ol6-112-rac1" bằng lệnh sau.

# shutdown -h now

Trên máy chủ lưu trữ, tạo 4 đĩa ảo có thể chia sẻ và liên kết chúng dưới dạng phương tiện ảo bằng các lệnh sau. Bạn có thể chọn một vị trí khác, nhưng hãy đảm bảo rằng chúng nằm ngoài thư mục VM hiện có.

$ mkdir -p /u04/VirtualBox/ol6-112-rac
$ cd /u04/VirtualBox/ol6-112-rac
$
$ # Create the disks and associate them with VirtualBox as virtual media.
$ VBoxManage createhd --filename asm1.vdi --size 5120 --format VDI --variant Fixed
$ VBoxManage createhd --filename asm2.vdi --size 5120 --format VDI --variant Fixed
$ VBoxManage createhd --filename asm3.vdi --size 5120 --format VDI --variant Fixed
$ VBoxManage createhd --filename asm4.vdi --size 5120 --format VDI --variant Fixed
$
$ # Connect them to the VM.
$ VBoxManage storageattach ol6-112-rac1 --storagectl "SATA" --port 1 --device 0 --type hdd \
    --medium asm1.vdi --mtype shareable
$ VBoxManage storageattach ol6-112-rac1 --storagectl "SATA" --port 2 --device 0 --type hdd \
    --medium asm2.vdi --mtype shareable
$ VBoxManage storageattach ol6-112-rac1 --storagectl "SATA" --port 3 --device 0 --type hdd \
    --medium asm3.vdi --mtype shareable
$ VBoxManage storageattach ol6-112-rac1 --storagectl "SATA" --port 4 --device 0 --type hdd \
    --medium asm4.vdi --mtype shareable
$
$ # Make shareable.
$ VBoxManage modifyhd asm1.vdi --type shareable
$ VBoxManage modifyhd asm2.vdi --type shareable
$ VBoxManage modifyhd asm3.vdi --type shareable
$ VBoxManage modifyhd asm4.vdi --type shareable
# cd / dev
# ls sd *
sda sda1 sda2 sdb sdc sdd sde
#

Sử dụng lệnh "fdisk" để phân vùng các đĩa sdb thành sde. Đầu ra sau đây hiển thị đầu ra fdisk dự kiến ​​cho đĩa sdb.

# fdisk /dev/sdb
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel with disk identifier 0x62be91cf.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable.

Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)

WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
         switch off the mode (command 'c') and change display units to
         sectors (command 'u').

Command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-652, default 1): 
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-652, default 652): 
Using default value 652

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.
#

Khi tất cả các đĩa được phân vùng, kết quả có thể được nhìn thấy bằng cách lặp lại lệnh "ls" trước đó.

# cd / dev
# ls sd *
sda sda1 sda2 sdb sdb1 sdc sdc1 sdd sdd1 sde sde1
#

Thêm phần sau vào tệp "/etc/scsi_id.config" để định cấu hình thiết bị SCSI là đáng tin cậy. Tạo tệp nếu nó chưa tồn tại.

options=-g

ID SCSI của đĩa của tôi được hiển thị bên dưới.

# /sbin/scsi_id -g -u -d /dev/sdb
1ATA_VBOX_HARDDISK_VB348c4cfc-e3924169
# /sbin/scsi_id -g -u -d /dev/sdc
1ATA_VBOX_HARDDISK_VB5a922b63-bdda991a
# /sbin/scsi_id -g -u -d /dev/sdd
1ATA_VBOX_HARDDISK_VB4bcd7321-f022a60f
# /sbin/scsi_id -g -u -d /dev/sde
1ATA_VBOX_HARDDISK_VBec4843fc-6004ae11
#

Sử dụng các giá trị này, chỉnh sửa tệp "/etc/udev/rules.d/99-oracle-asmdevices.rules" thêm 4 mục nhập sau. Tất cả các tham số cho một mục nhập phải nằm trên cùng một dòng.

KERNEL=="sd?1", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u -d /dev/$parent", RESULT=="1ATA_VBOX_HARDDISK_VB348c4cfc-e3924169",
  NAME="asm-disk1", OWNER="oracle", GROUP="dba", MODE="0660"
KERNEL=="sd?1", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u -d /dev/$parent", RESULT=="1ATA_VBOX_HARDDISK_VB5a922b63-bdda991a",
  NAME="asm-disk2", OWNER="oracle", GROUP="dba", MODE="0660"
KERNEL=="sd?1", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u -d /dev/$parent", RESULT=="1ATA_VBOX_HARDDISK_VB4bcd7321-f022a60f",
  NAME="asm-disk3", OWNER="oracle", GROUP="dba", MODE="0660"
KERNEL=="sd?1", BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u -d /dev/$parent", RESULT=="1ATA_VBOX_HARDDISK_VBec4843fc-6004ae11",
  NAME="asm-disk4", OWNER="oracle", GROUP="dba", MODE="0660"

Tải bảng phân vùng thiết bị khối đã cập nhật.

# /sbin/partprobe /dev/sdb1
# /sbin/partprobe /dev/sdc1
# /sbin/partprobe /dev/sdd1
# /sbin/partprobe /dev/sde1

Kiểm tra các quy tắc đang hoạt động như mong đợi.

# /sbin/udevadm control --reload-rules
# /sbin/start_udev

Tải lại các quy tắc UDEV và khởi động UDEV.

# / sbin / udevadm control --reload-rules
# / sbin / start_udev

Các đĩa bây giờ sẽ hiển thị và có quyền sở hữu chính xác bằng cách sử dụng lệnh sau. Nếu chúng không hiển thị, cấu hình UDEV của bạn không chính xác và phải được sửa trước khi bạn tiếp tục.

# ls -al /dev/asm*
brw-rw---- 1 oracle dba 8, 17 Oct 12 14:39 /dev/asm-disk1
brw-rw---- 1 oracle dba 8, 33 Oct 12 14:38 /dev/asm-disk2
brw-rw---- 1 oracle dba 8, 49 Oct 12 14:39 /dev/asm-disk3
brw-rw---- 1 oracle dba 8, 65 Oct 12 14:39 /dev/asm-disk4
#

Các đĩa dùng chung hiện đã được định cấu hình cho cơ sở hạ tầng lưới.

Sao chép máy ảo

Tắt máy ảo "ol6-112-rac1" bằng lệnh sau.

# shutdown -h now

Sao chép thủ công đĩa "ol6-112-rac1.vdi" bằng các lệnh sau trên máy chủ lưu trữ.

$ mkdir -p / u03 / VirtualBox / ol6-112-rac2
$ VBoxManage clonehd /u01/VirtualBox/ol6-112-rac1/ol6-112-rac1.vdi /u03/VirtualBox/ol6-112-rac2/ol6-112-rac2.vdi

Tạo máy ảo "ol6-112-rac2" trong VirtualBox theo cách giống như cách bạn đã làm với "ol6-112-rac1", ngoại trừ việc sử dụng ổ cứng ảo "ol6-112-rac2.vdi" hiện có.

Trình hướng dẫn máy ảo mới - Ổ cứng

Hãy nhớ thêm bộ điều hợp mạng thứ hai như bạn đã làm trên máy ảo "ol6-112-rac1". Khi máy ảo được tạo, hãy gắn các đĩa dùng chung vào máy ảo này.

$ cd /u04/VirtualBox/ol6-112-rac
$
$ VBoxManage storageattach ol6-112-rac2 --storagectl "SATA" --port 1 --device 0 --type hdd \
    --medium asm1.vdi --mtype shareable
$ VBoxManage storageattach ol6-112-rac2 --storagectl "SATA" --port 2 --device 0 --type hdd \
    --medium asm2.vdi --mtype shareable
$ VBoxManage storageattach ol6-112-rac2 --storagectl "SATA" --port 3 --device 0 --type hdd \
    --medium asm3.vdi --mtype shareable
$ VBoxManage storageattach ol6-112-rac2 --storagectl "SATA" --port 4 --device 0 --type hdd \
    --medium asm4.vdi --mtype shareable

Khởi động máy ảo "ol6-112-rac2" bằng cách nhấp vào nút "Start" trên thanh công cụ. Bỏ qua mọi lỗi mạng trong quá trình khởi động.

Đăng nhập vào máy ảo "ol6-112rac2" với tư cách là người dùng "root" để chúng tôi có thể cấu hình lại cài đặt mạng cho phù hợp với những điều sau.

  • hostname: ol6-112-rac2.localdomain
  • IP Address eth0: 192.168.0.112 (public address)
  • Default Gateway eth0: 192.168.0.1 (public address)
  • IP Address eth1: 192.168.1.112 (private address)
  • Default Gateway eth1: none

Sửa đổi tên máy chủ trong tệp "/ etc / sysconfig / network".

NETWORKING=yes
HOSTNAME=ol6-112-rac2.localdomain

Kiểm tra địa chỉ MAC của từng kết nối mạng khả dụng. Đừng lo lắng rằng chúng được liệt kê là "eth2" và "eth3". Đây là các kết nối được tạo động vì địa chỉ MAC của kết nối "eth0" và "eth1" không chính xác.

# ifconfig -a | grep eth
eth2      Link encap:Ethernet  HWaddr 08:00:27:95:ED:33
eth3      Link encap:Ethernet  HWaddr 08:00:27:E3:DA:B6
#

Chỉnh sửa "/etc/sysconfig/network-scripts/ifcfg-eth0",, chỉ sửa đổi cài đặt IPADDR và ​​HWADDR như sau và xóa mục nhập UUID. Lưu ý, giá trị HWADDR đến từ giao diện "eth2" hiển thị ở trên.

HWADDR=08:00:27:95:ED:33
IPADDR=192.168.0.112

Chỉnh sửa "/etc/sysconfig/network-scripts/ifcfg-eth1", chỉ sửa đổi cài đặt IPADDR và ​​HWADDR như sau và xóa mục nhập UUID. Lưu ý, giá trị HWADDR đến từ giao diện "eth3" hiển thị ở trên.

HWADDR=08:00:27:E3:DA:B6
IPADDR=192.168.1.112

Nếu tên bộ điều hợp không được đặt lại đúng cách, hãy kiểm tra HWADDRtrong tệp "/etc/udev/rules.d/70-persently-net.rules". Nếu nó không chính xác, hãy sửa đổi nó để phù hợp với các cài đặt được mô tả ở trên.

Chỉnh sửa tệp "/home/oracle/.bash_profile" trên nút "ol6-112-rac2" để sửa các giá trị ORACLE_SID và ORACLE_HOSTNAME.

RACLE_SID=RAC2; export ORACLE_SID
ORACLE_HOSTNAME=ol6-112-rac2.localdomain; export ORACLE_HOSTNAME

Ngoài ra, hãy sửa đổi cài đặt ORACLE_SID trong các tệp "/home/oracle/db_env" và "/home/oracle/grid_env".

Khởi động lại máy ảo "ol6-112-rac2" và khởi động máy ảo "ol6-112-rac1". Khi cả hai nút đã khởi động, hãy kiểm tra xem chúng có thể ping tất cả các địa chỉ IP Public và Private không bằng cách sử dụng các lệnh sau.

ping -c 3 ol6-112-rac1
ping -c 3 ol6-112-rac1-priv
ping -c 3 ol6-112-rac2
ping -c 3 ol6-112-rac2-priv

Tại thời điểm này, các địa chỉ IP ảo được xác định trong tệp "/etc/hosts" sẽ không hoạt động, vì vậy đừng bận tâm kiểm tra chúng.

# ls -al /dev/asm*
brw-rw----. 1 oracle dba 8, 17 Jan 12 20:16 /dev/asm-disk1
brw-rw----. 1 oracle dba 8, 33 Jan 12 20:16 /dev/asm-disk2
brw-rw----. 1 oracle dba 8, 49 Jan 12 20:16 /dev/asm-disk3
brw-rw----. 1 oracle dba 8, 65 Jan 12 20:16 /dev/asm-disk4
#

Trước 11gR2, chúng tôi có thể sẽ sử dụng tiện ích "runcluvfy.sh" trong thư mục gốc của phần mềm cụm để kiểm tra các điều kiện tiên quyết đã được đáp ứng. Nếu bạn đang định cấu hình kết nối SSH bằng trình cài đặt, kiểm tra này nên được bỏ qua vì nó sẽ luôn không thành công. Nếu bạn muốn thiết lập kết nối SSH theo cách thủ công thì sau khi hoàn tất, bạn có thể chạy "runcluvfy.sh" bằng lệnh sau.

/mountpoint/clusterware/runcluvfy.sh stage -pre crsinst -n ol6-112-rac1,ol6-112-rac2 -verbose

Nếu bạn gặp bất kỳ lỗi nào, hãy chắc chắn sửa chúng trước khi tiếp tục.

Quá trình thiết lập máy ảo đã hoàn tất.

$ cd / u04 / VirtualBox / ol6-112-rac
$ zip PreGrid.zip * .vdi

Cài đặt Grid Infrastructure

Đảm bảo rằng cả hai máy ảo đều được khởi động, sau đó đăng nhập vào "ol6-112-rac1" với tư cách người dùng oracle và khởi động trình cài đặt Oracle.

$ cd /host/software/oracle/11gR2/11.2.0.3.0/linux64_grid
$ ./runInstaller

Chọn tùy chọn "Skip software updates", sau đó nhấp vào nút "Next".


Chọn tùy chọn "Install and Configure Oracle Grid Infrastructure for a Cluster", sau đó nhấp vào nút "Next".


Chọn tùy chọn "Typical Installation", sau đó nhấp vào nút "Next".


Trên màn hình "Specify Cluster Configuration", nhập Tên SCAN chính xác và nhấp vào nút "Add".


Nhập chi tiết của nút thứ hai trong cụm, sau đó nhấp vào nút "OK".


Nhấp vào nút "SSH Connectivity ..." và nhập mật khẩu cho người dùng "oracle". Nhấp vào nút "Setup" để định cấu hình kết nối SSH và nút "Test" để kiểm tra sau khi hoàn tất.


Nhấp vào nút "Identify network interfaces..." và kiểm tra mạng công cộng và mạng riêng được chỉ định chính xác. Khi bạn hài lòng với chúng, hãy nhấp vào nút "OK" và nút "Next" trên màn hình trước đó.


Nhập "/u01/app/11.2.0.3/grid" làm vị trí phần mềm và "Automatic Storage Manager" làm  cluster registry storage type. Nhập mật khẩu ASM, chọn "dba" làm nhóm và nhấp vào nút "Next".


Đặt phần dư thừa thành "External", nhấp vào nút "Change Discovery Path" và đặt đường dẫn thành "/dev/asm *". Quay lại màn hình chính và chọn tất cả 4 đĩa và nhấp vào nút "Next".


Chấp nhận thư mục kho lưu trữ mặc định bằng cách nhấp vào nút "Next".


Chờ trong khi kiểm tra điều kiện tiên quyết hoàn tất. Nếu bạn gặp bất kỳ vấn đề nào, hãy khắc phục chúng hoặc chọn hộp kiểm "Ignore All" và nhấp vào nút "Next".


Nếu bạn hài lòng với thông tin tóm tắt, hãy nhấp vào nút "Install".


Chờ trong khi setup diễn ra.


Khi được nhắc, hãy chạy các tập lệnh cấu hình trên mỗi nút.


Đầu ra từ tệp "orainstRoot.sh" sẽ trông giống như được liệt kê bên dưới.

# cd /u01/app/oraInventory
# ./orainstRoot.sh
Changing permissions of /u01/app/oraInventory.
Adding read,write permissions for group.
Removing read,write,execute permissions for world.

Changing groupname of /u01/app/oraInventory to oinstall.
The execution of the script is complete.
#

Đầu ra của root.sh sẽ thay đổi một chút tùy thuộc vào nút mà nó được chạy. Đầu ra ví dụ có thể được nhìn thấy ở đây ( Node1 , Node2 ).

Khi các tập lệnh đã hoàn tất, quay lại màn hình "Execute Configuration Scripts" trên "rac1" và nhấp vào nút "OK".


Chờ cho các cấu hình hoàn tất.


Chúng tôi hy vọng giai đoạn xác minh không thành công với lỗi liên quan đến SCAN, giả sử bạn không sử dụng DNS.

INFO: Checking Single Client Access Name (SCAN)...
INFO: Checking name resolution setup for "rac-scan.localdomain"...
INFO: ERROR:
INFO: PRVF-4664 : Found inconsistent name resolution entries for SCAN name "rac-scan.localdomain"
INFO: ERROR:
INFO: PRVF-4657 : Name resolution setup check for "rac-scan.localdomain" (IP address: 192.168.2.201) failed
INFO: ERROR:
INFO: PRVF-4664 : Found inconsistent name resolution entries for SCAN name "rac-scan.localdomain"
INFO: Verification of SCAN VIP and Listener setup failed

Với điều kiện đây là lỗi duy nhất, có thể an toàn bỏ qua điều này và tiếp tục bằng cách nhấp vào nút "Next".

Nhấp vào nút "Close" để thoát khỏi trình cài đặt.


Việc grid infrastructure hiện đã hoàn tất.

Cài đặt cơ sở dữ liệu

Đảm bảo máy ảo "ol6-112-rac1" và "ol6-112-rac2" được khởi động, sau đó đăng nhập vào "ol6-112-rac1" với tư cách người dùng oracle và khởi động trình cài đặt Oracle.

$ cd /host/software/oracle/11gR2/11.2.0.3.0/linux64_database
$ ./runInstaller

Bỏ chọn hộp kiểm cập nhật bảo mật và nhấp vào nút "Next" và "Yes" trên hộp thoại cảnh báo tiếp theo.


Chọn hộp kiểm "Skip software updates" và nhấp vào nút "Next".


Chấp nhận tùy chọn "Create and configure a database" bằng cách nhấp vào nút "Next".


Chấp nhận tùy chọn "Server Class" bằng cách nhấp vào nút "Next".


Đảm bảo rằng cả hai nút đều được chọn, sau đó nhấp vào nút "Next".


Chấp nhận tùy chọn "Typical install" bằng cách nhấp vào nút "Next".


Nhập "/u01/app/oracle/product/11.2.0.3/db_1" cho vị trí phần mềm. Loại lưu trữ phải được đặt thành "Automatic Storage Manager". Nhập mật khẩu và tên cơ sở dữ liệu thích hợp, trong trường hợp này là "RAC.localdomain".


Chờ kiểm tra điều kiện tiên quyết hoàn tất. Nếu có bất kỳ sự cố nào, hãy khắc phục chúng hoặc chọn hộp kiểm "Ignore All" và nhấp vào nút "Next".


Nếu bạn hài lòng với thông tin tóm tắt, hãy nhấp vào nút "Install".


Chờ trong khi quá trình cài đặt diễn ra.


Sau khi cài đặt phần mềm hoàn tất, Hỗ trợ cấu hình cơ sở dữ liệu (DBCA) sẽ tự động khởi động.


Khi Hỗ trợ cấu hình cơ sở dữ liệu (DBCA) đã hoàn tất, hãy nhấp vào nút "OK".


Khi được nhắc, hãy chạy các tập lệnh cấu hình trên mỗi nút. Khi các tập lệnh đã được chạy trên mỗi nút, hãy nhấp vào nút "OK".


Nhấp vào nút "Close" để thoát khỏi trình cài đặt.


Việc tạo cơ sở dữ liệu RAC hiện đã hoàn tất.

Kiểm tra trạng thái của RAC

Có một số cách để kiểm tra trạng thái của RAC. Các srvctltiện ích cho thấy cấu hình hiện tại và trạng thái của cơ sở dữ liệu RAC.

$ srvctl config database -d RAC
Database unique name: RAC
Database name: RAC
Oracle home: /u01/app/oracle/product/11.2.0.3/db_1
Oracle user: oracle
Spfile: +DATA/RAC/spfileRAC.ora
Domain: localdomain
Start options: open
Stop options: immediate
Database role: PRIMARY
Management policy: AUTOMATIC
Server pools: RAC
Database instances: RAC2,RAC1
Disk Groups: DATA
Mount point paths: 
Services: 
Type: RAC
Database is administrator managed
$

$ srvctl status database -d RAC
Instance RAC1 is running on node ol6-112-rac1
Instance RAC2 is running on node ol6-112-rac2
$

Các V$ACTIVE_INSTANCES cũng có thể hiển thị trạng thái hiện tại của instance.

$ sqlplus / as sysdba

SQL*Plus: Release 11.2.0.3.0 Production on Tue Sep 27 22:20:14 2011

Copyright (c) 1982, 2011, Oracle.  All rights reserved.


Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,
Data Mining and Real Application Testing options

SQL> SELECT inst_name FROM v$active_instances;

INST_NAME
--------------------------------------------------------------------------------
ol6-112-rac1.localdomain:RAC1
ol6-112-rac2.localdomain:RAC2

SQL>

Nếu bạn đã định cấu hình Enterprise Manager, nó có thể được sử dụng để xem cấu hình và trạng thái hiện tại của cơ sở dữ liệu bằng cách sử dụng URL như "https: //ol6-112-rac1.localdomain:1158/em".


Hy vọng giúp ích được cho bạn.

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/OracleDBAVietNam 👨 Website: http://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 #OracleTutorial #OracleDBA #OracleDatabaseAdministration #học oracle database #oca #ocp #oce #ocm

ĐỌC NHIỀU

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