Hướng dẫn cài đặt oracle 11g r2

Nội dung của bài viết này chỉ đơn giản hướng dẫn bạn cài đặt và tạo 1 database Oracle, những cách cài đặt phức tạp khác như lưu trữ ASM, Real Application Cluster,... xin không đề cập ở bài viết này. Ngoài ra Oracle Database chạy khá nặng, nên yêu cầu máy tính của bạn khoảng 2G RAM trở lên và ổ cứng trống dành cho Oracle khoảng 10G trở lên cho thoải mái!

Đầu tiên, bạn cần vào trang www.oracle.com để download bộ cài của Oracle Database

Để download bạn cần có tài khoản của Oracle.Vào trang này để đăng ký. Click vào phần Create Account

Sau khi tải về, bạn sẽ có 2 file. Giải nén lần lượt 2 file vào cùng 1 thư mục rồi chạy file runInstaller. Màn hình đầu tiên trông sẽ như thế này. Bạn bỏ dấu tích ở phần I wish to receive security updates via My Oracle Support và click Next

Hướng dẫn cài đặt oracle 11g r2

Màn hình tiếp theo, bạn chọn option đầu tiên: Create and configure a database.

Hướng dẫn cài đặt oracle 11g r2

Tiếp theo bạn chọn System Class

Hướng dẫn cài đặt oracle 11g r2

Bạn chọn Single instance database installation

Hướng dẫn cài đặt oracle 11g r2

Bạn chọn Typical install

Hướng dẫn cài đặt oracle 11g r2

Ở phần này, bạn điền các thông tin như sau:

Oracle base: D:\app\oracle Software location: D:\app\oracle\product\11.2.0\dbhome_1 Storage Type: File System Database File location: D:\app\oracle\oradata (Đây là nơi đặt các datafile của database) Database edittion: Enterprise Edittion (4,29G) OSDBA Group: oinstall Global database name: ỎRCL Administrative password và Confirm Password: Nhập và xác nhận mật khẩu quản trị

Hướng dẫn cài đặt oracle 11g r2

Ở phần Inventory Dictionary chọn D:\app\oraInventory

Hướng dẫn cài đặt oracle 11g r2

Ở bước tiếp theo, trình cài đặt sẽ kiểm tra hệ thống của chúng ta xem có đáp ứng được các yêu cầu của Oracle hay không. Nếu có nó sẽ hiển thị ra như hình dưới. Tuy nhiên, mục đích của chúng ta là học tập nên cảnh báo này có thể bỏ qua. Click vào Ignore all và ấn Next.

Hướng dẫn cài đặt oracle 11g r2

Màn hình Summary hiện ra cho bạn biết thông tin về database bạn sắp tạo. Click Finish

Hướng dẫn cài đặt oracle 11g r2

Và quá trình cài đặt bắt đầu:

Hướng dẫn cài đặt oracle 11g r2

Và kết thúc

Hướng dẫn cài đặt oracle 11g r2

Bài hướng dẫn này được viết ra với mục đích giúp bạn "phá băng" ban đầu. Tạm thời bạn chưa cần hỏi ý nghĩa của từng bước quá chi tiết, hãy cứ cài đặt 1 database với những option cơ bản nhất như trên, và chúng ta sẽ bắt đầu tìm hiểu sâu hơn ở những bài tiếp theo.

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.

Hướng dẫn cài đặt oracle 11g r2

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

Hướng dẫn cài đặt oracle 11g r2

Tải chương trinh

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

  • Oracle Linux 6.3
  • VirtualBox
  • Phần mềm Oracle 11g Release 2 (11.2.0.3) (64 bit)

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".

Hướng dẫn cài đặt oracle 11g r2

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

Hướng dẫn cài đặt oracle 11g r2

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".

Hướng dẫn cài đặt oracle 11g r2

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

Hướng dẫn cài đặt oracle 11g r2

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

Hướng dẫn cài đặt oracle 11g r2

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.

Hướng dẫn cài đặt oracle 11g r2

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".

Hướng dẫn cài đặt oracle 11g r2

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

Hướng dẫn cài đặt oracle 11g r2

Đả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".

Hướng dẫn cài đặt oracle 11g r2

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".

Hướng dẫn cài đặt oracle 11g r2

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".

Hướng dẫn cài đặt oracle 11g r2

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.

Hướng dẫn cài đặt oracle 11g r2

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.

yum update

0

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]

yum update

1

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.

yum update

2

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.

yum update

3

Đị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.

yum update

4

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".

yum update

5

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

yum update

6

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

yum update

7

Đă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".

yum update

8

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

yum update

9

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

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

0

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.

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

1

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

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

2

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.

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

3

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.

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

4

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ó.

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

5

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

6

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.

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

7

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 đó.

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

8

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.

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

9

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

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

0

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.

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

1

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

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

2

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

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

3

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

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

4

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.

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

5

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.

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

4

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ữ.

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

7

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ó.

Hướng dẫn cài đặt oracle 11g r2

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.

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

8

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".

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

9

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.

/sbin/sysctl -p

0

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.

/sbin/sysctl -p

1

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.

/sbin/sysctl -p

2

Nếu tên bộ điều hợp không được đặt lại đúng cách, hãy kiểm tra

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

4trong 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.

/sbin/sysctl -p

3

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.

/sbin/sysctl -p

4

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.

/sbin/sysctl -p

5

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.

/sbin/sysctl -p

6

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.

/sbin/sysctl -p

7

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.

/sbin/sysctl -p

8

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

Hướng dẫn cài đặt oracle 11g r2

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

Hướng dẫn cài đặt oracle 11g r2

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

Hướng dẫn cài đặt oracle 11g r2

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".

Hướng dẫn cài đặt oracle 11g r2

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

Hướng dẫn cài đặt oracle 11g r2

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.

Hướng dẫn cài đặt oracle 11g r2

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 đó.

Hướng dẫn cài đặt oracle 11g r2

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".

Hướng dẫn cài đặt oracle 11g r2

Đặ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".

Hướng dẫn cài đặt oracle 11g r2

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".

Hướng dẫn cài đặt oracle 11g r2

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".

Hướng dẫn cài đặt oracle 11g r2

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".

Hướng dẫn cài đặt oracle 11g r2

Chờ trong khi setup diễn ra.

Hướng dẫn cài đặt oracle 11g r2

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

Hướng dẫn cài đặt oracle 11g r2

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

/sbin/sysctl -p

9

Đầ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".

Hướng dẫn cài đặt oracle 11g r2

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

Hướng dẫn cài đặt oracle 11g r2

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.

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

0

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.

Hướng dẫn cài đặt oracle 11g r2

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.

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

1

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.

Hướng dẫn cài đặt oracle 11g r2

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

Hướng dẫn cài đặt oracle 11g r2

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

Hướng dẫn cài đặt oracle 11g r2

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

Hướng dẫn cài đặt oracle 11g r2

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

Hướng dẫn cài đặt oracle 11g r2

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

Hướng dẫn cài đặt oracle 11g r2

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".

Hướng dẫn cài đặt oracle 11g r2

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".

Hướng dẫn cài đặt oracle 11g r2

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".

Hướng dẫn cài đặt oracle 11g r2

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

Hướng dẫn cài đặt oracle 11g r2

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.

Hướng dẫn cài đặt oracle 11g r2

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".

Hướng dẫn cài đặt oracle 11g r2

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".

Hướng dẫn cài đặt oracle 11g r2

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

Hướng dẫn cài đặt oracle 11g r2

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

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

5tiệ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.

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

2

Các

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

6cũng có thể hiển thị trạng thái hiện tại của instance.

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

3

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".

Hướng dẫn cài đặt oracle 11g r2

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: [email protected] ☎️ 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