ĐĂNG KÝ ĐỂ NHẬN THÔNG TIN MỚI NHẤT

Hướng dẫn cấu hình Service tự động bật Oracle Database

Mở đầu

Nếu bạn đang sử dụng Clusterware cho Oracle RAC hay Single-Intance với ASM, Clusterware sẽ tự động bật tắt Instance và Listener khi reboot OS. Nhưng nếu không sử dụng Clusterware, ta vẫn có thể tự động bật tắt Oracle Database bằng cách cấu hình thủ công các service trên Linux.
(Các bước cấu hình sau đây hoạt động được với phiên bản Oracle Database từ 10g với hệ điều hành Linux 7 trở lên)

Bước 1: Cấu hình Oratab

Trước tiên cần chỉnh sửa file “/etc/oratab” để cho phép tự động bật Instance Oracle Database bằng cách thay đổi cờ (restart flag) từ “N” thành “Y” cho mỗi Instance trong file.
[oracle@ol79 ~]$ vi /etc/oratab
...
WECDB:/u01/app/oracle/product/11.2.0.4/dbhome_1:Y
...
[oracle@ol79 ~]$

Bước 2: Cấu hình Script tự động

Tạo một script đặt biến môi trường cho user oracle (có thể thực hiện với root hoặc oracle). Bạn hãy tự chỉnh lại các đường dẫn và tên Database cho phù hợp với hệ thống của mình.
[oracle@ol79 ~]$ mkdir -p /home/oracle/scripts/
[oracle@ol79 ~]$ cd /home/oracle/scripts/
[oracle@ol79 ~]$ vi setEnv.sh
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0.4/dbhome_1
export ORACLE_SID=WECDB
export PATH=/usr/sbin:/usr/local/bin:$PATH
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
[oracle@ol79 ~]$
Chạy thêm lệnh sau để có thể tự động thực thi script trên khi user oracle được login trên OS.
[oracle@ol79 ~]$ echo ". /home/oracle/scripts/setEnv.sh" >> /home/oracle/.bash_profile
[oracle@ol79 ~]$

Bước 3: Thực hiện tạo script bật và tắt Database

Cũng trong thư mục “/home/oracle/scripts/”, ta sẽ tạo các file script dùng để bật và tắt Oracle Database.
[oracle@ol79 ~]$ cd /home/oracle/scripts/
[oracle@ol79 ~]$ vi start_all.sh
. /home/oracle/scripts/setEnv.sh
export ORAENV_ASK=NO
. oraenv
export ORAENV_ASK=YES
dbstart \$ORACLE_HOME
[oracle@ol79 ~]$
[oracle@ol79 ~]$ vi stop_all.sh
. /home/oracle/scripts/setEnv.sh
export ORAENV_ASK=NO
. oraenv
export ORAENV_ASK=YES
dbshut \$ORACLE_HOME
[oracle@ol79 ~]$
Cấp quyền thực thi cho các file script trong thư mục “/home/oracle/scripts/”
[oracle@ol79 ~]$ chmod u+x /home/oracle/scripts/*.sh
[oracle@ol79 ~]$

Bước 4: Cấu hình đường dẫn Listener

Trong file “$ORACLE_HOME/bin/dbstart” ta sẽ đặt tham số chỉ định lại đường dẫn Oracle Home cho Listener.
[oracle@ol79 ~]$ cd $ORACLE_HOME/bin/
[oracle@ol79 ~]$ vi dbstart
...
ORACLE_HOME_LISTNER=$ORACLE_HOME
...
[oracle@ol79 ~]$
Đến đây thì bạn có thể thực hiện bằng tay để test xem các file “start_all.sh” và “stop_all.sh” có thực thi thành công hay không.

Bước 5: Cấu hình và khởi tạo Service

Sau khi tạo xong các file script ta sẽ tạo các service tự động thực thi các script đã tạo ở trên và kích hoạt các service này lên để khi OS khởi động lại sẽ tự bật Database (thực hiện bằng user root).
[root@ol79 ~]# cd /lib/systemd/system/
[root@ol79 ~]# vi dbora.service
[Unit]
Description=The Oracle Database Service
After=syslog.target network.target
[Service]
LimitMEMLOCK=infinity
LimitNOFILE=65535
RemainAfterExit=yes
User=oracle
Group=oinstall
Restart=no
ExecStart=/bin/bash -c '/home/oracle/scripts/start_all.sh'
ExecStop=/bin/bash -c '/home/oracle/scripts/stop_all.sh'
[Install]
WantedBy=multi-user.target
Sau khi tạo service xong thì bật và kích hoạt service lên
[root@ol79 ~]# systemctl daemon-reload
[root@ol79 ~]# systemctl start dbora.service
[root@ol79 ~]# systemctl enable dbora.service
Kiểm tra lại trạng thái service
[root@ol79 ~]# systemctl status dbora.service
Lời kết
Như vậy là bạn đã cấu hình xong quy trình tự động bật Oracle Database trên hệ điều hành Linux. Bạn có thể khởi động lại OS để kiểm tra hoạt động của service. Hẹn gặp lại bạn ở các bài viết tiếp theo.
_d0n.n13_
Views: 285





    Câu hỏi bảo mật

    Trả lời

    Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

    Ask ChatGPT
    Set ChatGPT API key
    Find your Secret API key in your ChatGPT User settings and paste it here to connect ChatGPT with your Tutor LMS website.