Oracle kurulumuyla birlikte gelen dbstart
/ dbshut
komut dosyalarını kullanabilirsiniz . Onlar altında mevcuttur $ORACLE_HOME/bin
.
Yeni bir yüklemeden sonra /etc/oratab
dosyayı düzenlemeniz gerekir :
# 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
Sonra komut dosyalarını şu şekilde kullanabilirsiniz:
$ whoami
juser
$ dbstart $ORACLE_HOME
$ # execute DB jobs ...
$ dbshut $ORACLE_HOME
dbstart
Pro * C / OCI programları için gerekli olan her şeyi getirir.
dbstart
/ Kullanılması dbshut
, soruda belirtilen özel yöntemin üzerinde bir gelişmedir:
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
(Core i7 / 2.8GHz sistemde, yavaş dönen sabit disk.)
Dbstart / dbshut nasıl çalışır
Bir dbstart $ORACLE_HOME$
çağrı temelde aşağıdakilere eşdeğerdir:
$ lsnrctl start
$ echo -e 'connect / as sysdba\nstartup\nquit'| sqlplus /nolog
Ve a dbshut $ORACLE_HOME$
temel olarak aşağıdakilere eşdeğerdir:
$ lsnrctl stop
$ echo -e 'connect / as sysdba\nshutdown\nquit'| sqlplus /nolog
(her şeyin kapatıldığını doğrulayabilirsiniz ps aux | grep 'tnsl\|ora'
)
Komutların sırasının önemli olduğunu unutmayın. Bu lsnrctl start
, sqlplus-startup komutundan sonra yürütüldüğünde, Pro * C / OCI programı hala kullanılamayan bir TNS dinleyicisinden şikayetçi demektir.
Ve bu, tam olarak emctl start
yanlış sıralamayı geçici olarak çözdüğü için TNS-dinleyici kurulum bölümünü düzelttiği için sorudaki komut dizisi ile ilgili problemdir .
Ayrıca Pro * C / OCI programlarını yürütmek için EMCTL servisine gerek olmadığını unutmayın.