আপনি dbstart/ dbshutস্ক্রিপ্টগুলি ব্যবহার করতে পারেন যা একটি ওরাকল ইনস্টল সহ আসে। তারা অধীনে উপলব্ধ $ORACLE_HOME/bin।
নতুন ইনস্টল করার পরে আপনাকে /etc/oratabফাইলটি সম্পাদনা করতে হবে:
# cat /etc/oratab
# format: $ORACLE_SID:$ORACLE_HOME:N|Y
my_sid:/home/juser/app/juser/product/11.2.0/dbhome_1:N
# sed -i 's/:N$/:Y/' /etc/oratab
# grep my_sid /etc/oratab
my_sid:/home/juser/app/juser/product/11.2.0/dbhome_1:Y
তারপরে আপনি স্ক্রিপ্টগুলি এর মতো ব্যবহার করতে পারেন:
$ whoami
juser
$ dbstart $ORACLE_HOME
$ # execute DB jobs ...
$ dbshut $ORACLE_HOME
dbstart প্রো * সি / ওসিআই প্রোগ্রামগুলির জন্য প্রয়োজনীয় সমস্তগুলি এনেছে।
প্রশ্নে উল্লিখিত কাস্টম পদ্ধতির উপরে dbstart/ ব্যবহার dbshutউন্নতি:
method time called tools
―――――――――――――――――――――――――――――――――――――――――――――――――――――
dbstart 5.7 s lsnrctl, sqlplus
dbshut 5.7 s lsnrctl, sqlplus
custom startup 27.9 s lsnrctl, sqlplus, emctl
custom shutdown 31.0 s lsnrctl, sqlplus, emctl
(একটি কোর i7 / 2.8GHz সিস্টেমে বার, ধীরে ধীরে স্পিনিং হার্ড ডিস্ক)
কিভাবে dbstart / dbshut কাজ করে
একটি dbstart $ORACLE_HOME$কল মূলত: সমান
$ lsnrctl start
$ echo -e 'connect / as sysdba\nstartup\nquit'| sqlplus /nolog
এবং একটি dbshut $ORACLE_HOME$মূলত:
$ lsnrctl stop
$ echo -e 'connect / as sysdba\nshutdown\nquit'| sqlplus /nolog
(আপনি যদি সবকিছু দিয়ে শাটডাউন করে যাচাই করতে পারেন ps aux | grep 'tnsl\|ora')
লক্ষ্য করুন যে কমান্ডগুলির ক্রমটি গুরুত্বপূর্ণ। এর অর্থ যখন lsnrctl startস্ক্যালপ্লাস-স্টার্টআপ কমান্ডের পরে মৃত্যুদন্ড কার্যকর করা হয় তখন প্রো * সি / ওসিআই প্রোগ্রামটি এখনও অপ্রাপ্য টিএনএস-শ্রোতার অভিযোগ করে।
এবং এটি হ'ল প্রশ্নটির কমান্ড সিকোয়েন্সের সাথে ঠিক একই সমস্যা - যেখানে emctl startস্রেফ ভুল ক্রমটি কার্যকর করা হয় কারণ এটি টিএনএস-শ্রোতার সেটআপ অংশটি ঠিক করে।
আরও লক্ষ করুন যে প্রো * সি / ওসিআই প্রোগ্রামগুলি সম্পাদন করার জন্য ইএমসিটিএল পরিষেবাটির প্রয়োজন নেই।