Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

CRON và SQLPLUS

môi trường shell rất quan trọng đối với Oracle và hầu như không có khi sử dụng cron. Như mọi khi, có một số cách để giải quyết vấn đề này.

  1. sử dụng các đường dẫn đủ điều kiện - hơi thiếu linh hoạt
  2. tạo tập lệnh để thiết lập môi trường thực thi của riêng nó
  3. thiết lập môi trường thực thi trong cron, khi gọi tập lệnh.

Một cách khá chuẩn để thiết lập môi trường của bạn từ khi có tập lệnh là sử dụng tập lệnh oraenv, thường nằm trong / usr / local / bin

ORACLE_SID={your_sid}
ORAENV_ASK=NO
type oraenv >/dev/null 2>&1 || PATH=/usr/local/bin:$PATH
. oraenv
SQLPATH=$HOME/sql
export SQLPATH
do your stuff

từ dòng cron:

10 10 * * * $HOME/.profile;$HOME/bin/your_script >$HOME/log/your_script.log 2>&1

Điều này giả định rằng .profile không tương tác và xuất ra môi trường cần thiết.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tìm hợp đồng gần đây nhất cho mỗi tài khoản

  2. Có công cụ cơ sở dữ liệu nào cho phép ràng buộc trường có thể xác minh được chỉ định bởi RegEx không?

  3. cột không được phép ở đây lỗi trong câu lệnh INSERT

  4. AWS Python Lambda với Oracle

  5. ORA-06508:PL / SQL:không thể tìm thấy đơn vị chương trình đang được gọi