Sponsored Content
Top Forums Shell Programming and Scripting Executing Oracle script from UNIX Script Post 302949823 by scotm on Thursday 16th of July 2015 11:23:29 AM
Old 07-16-2015
Executing Oracle script from UNIX Script

Hi, I hope this may be helpful.

We use a HP EVA SAN, and I need to run a lot of jobs to replicate a running database using RSM (Replication Solutions Manager) to put my running database into Hot backup mode, shutting down a running database etc.

In this example I need to shutdown a replicated database so that my RSM process can create a fresh replication.

You will notice that, in this case, I am using a remote shell to run the Oracle command. That is because I have a Tru64 Cluster of 5 hosts.
The RSM host agent can only run on one of the cluster members, and the database I want to shutdown is on one of the other cluster members.

Best of luck


Code:
sdunor09 #more shutdown_RPT1_rsh.ksh
#! /bin/ksh
#
##########################################################################
#
# File:         /RSM_Host_actions/UNIX_actions/shutdown_RPT1_rsh.ksh
# Usage:        Always run from a scheduled RSM job
# Author:       smckibbin
# Purpose:      This script runs an Oracle shutdown from a RSM job using rsh to cluster member sdunor10
# Version:
#               0.1 20130815 testing for RPT1 processing.
#               0.2 20130821 ready for production testing
#               0.3 20150310 revise for changed FQDN
#                         
###################################################################
# un-comment to run in debug
#set -x
###########################################################################
# set the constants
# source unix machine constants
#--------------------------------------------------------------------------
export BOX=`hostname -s | tr [A-Z] [a-z]`  MYTIME=`date '+%m-%d-%Y-%H%M'`  MO=$1  DY=$2  YR=$3
export LOGDB="/RSM_Host_actions/UNIX_actions/log/is_database_running.txt"
export ADMINS="user1@xyz.com uset2@ABC.com"
 
#this is a test to see which HOST is returned when run using rsh
#------------------------------------------------------------------
if [ `hostname -s` != "sdunor10" -o `whoami` != "root" ]; then
  echo "#########################################################"
  echo ""
  echo "This script has failed!!!!!!!"
  echo ""
  echo "You must execute this script as root from node sdunor10"
  echo ""
  echo "#########################################################"
  echo $BOX $0 |mailx -s "CANNOT run script on host other than sdunor10" $ADMINS
  #exit 1   exit with error will KILL the RSM job so exit 0 and let RSM clobber the database
  exit 0    #exit here because we don't want to run the heart of the script on the wrong host
fi
 
#------------------------------------------------------------------
# determine if the master Oracle process is running for the instance RPT1
  ps -ef | grep smon_RPT1 > $LOGDB
  # read the output file, looking for a line starting with oracle, use the value of field No. 8 
  masterdb=`more $LOGDB | awk '$1 ~ /oracle/ { print  $8 }'`
  if  [ $masterdb = ora_smon_RPT1 ]
      then
       #the master Oracle process is running, hence the database is running
       #run a remote rsh command as oracle to shut-down the database
      rsh sdunor10 '/usr/bin/su - oracle -c "/RSM_Host_actions/ORACLE_actions/RPT1_10g/stopdb_rpt1.sh"'
      exit 0
      else
       #the master Oracle process is NOT running, exit with success back to RSM
       exit0
  fi
echo "finished running script $0"
 
exit 0
#  script is  shutdown_RPT1_rsh.ksh

 

10 More Discussions You Might Find Interesting

1. UNIX for Advanced & Expert Users

Executing a .dll from a Unix script

Is it possible for a Unix script to execute a .dll. If so, where would I find information/examples of how to do that? Thanks, in advance, for any help. :rolleyes: (2 Replies)
Discussion started by: BCarlson
2 Replies

2. Shell Programming and Scripting

Doubt on Executing unix commands in script

How can I execute the unix command "cd - Change directory" command, so that my command prompt should be reflected for that change. Example : Now you are in your home directory i.e /home/naresh and you have some sub directory called unixinfo in your home directory. i want to write a script,so... (2 Replies)
Discussion started by: Naresh Kumar
2 Replies

3. UNIX for Advanced & Expert Users

Executing SQLPLUS in UNIX Script from JAVA

Hi ALL, I would like to execute one SQL query(ORACLE) in UNIX shell script. For this I used sqlplus in script and tested locally. It worked fine. But my requiremnt is to execute the script from Java. In this case the UNIX part is working but sqlplus is not returning anything The JAVA code used... (0 Replies)
Discussion started by: anooptech
0 Replies

4. Shell Programming and Scripting

Executing a Oracle SQL statement in a UNIX script

Hi All, I need to select one column from a table based upon the passed in parameter. I tried this: sqlplus -silent $MISP_USER << EOF set feedback off; set verify off; set sqlprompt "" SELECT mail_flag FROM dailyjobs WHERE job_name = '$1'; exit 0 EOF exit... (1 Reply)
Discussion started by: ganga.dharan
1 Replies

5. Shell Programming and Scripting

Executing unix script on windows through MKSToolkit

hi, I have an unix script and i'm executing from command prompt in windows. The script is exiting immediately when i call the script.But the script is getting executed at the back end. But when i type sh at command prompt i'm getting $ sign and i can see the execution of script. Is there... (5 Replies)
Discussion started by: ammu
5 Replies

6. UNIX for Advanced & Expert Users

Executing a shell script from windows;script present in unix

I need to execute a shell script kept in unix machine from windows. User id, password area available. For eg. There's a shell script wich moves all the logs kept in my home directory to a directory named LOGS. Now i need to get this done through windows; either using a batch file, or java... (4 Replies)
Discussion started by: rajneesh_kapoor
4 Replies

7. Shell Programming and Scripting

sh script to get unix username of person executing it

Hi, I am writing a script, and I need to incorporate some logic where I can find out the unix username of the person who is executing the script. The issue is , a particular user could have "sesu" ed into a group id. for eg. root, and then executed the script. In that case, instead of root,... (5 Replies)
Discussion started by: neil.k
5 Replies

8. Shell Programming and Scripting

How to pass Oracle sql script as argument to UNIX shell script?

Hi all, $ echo $SHELL /bin/bash Requirement - How to pass oracle sql script as argument to unix shell script? $ ./output.sh users.sql Below are the shell scripts and the oracle sql file in the same folder. Shell Script $ cat output.sh #!/bin/bash .... (7 Replies)
Discussion started by: a1_win
7 Replies

9. Shell Programming and Scripting

Executing java .jar from UNIX script

I have a .jar placed in my Unix directory. The .jar creates a .csv file .I want to execute the .jar and place the output file in a target Unix directory. The Unix Script is as follows. The issue that i am facing is that the file is not being placed in the REPORTDIR=/cdunix/IQNavigator/wrk instead... (4 Replies)
Discussion started by: pankajkargeti12
4 Replies

10. UNIX for Advanced & Expert Users

Executing of UNIX script using email

Dear Unix Leads, can you please let me know is it possible to execute a shell script in UNIX machine sending an email from outlook or gmail ? or is it possible to generate a token file in UNIX by sending email which we can indirectly use to trigger script your response on this is highly... (5 Replies)
Discussion started by: mirwasim
5 Replies
echo(1B)					     SunOS/BSD Compatibility Package Commands						  echo(1B)

NAME
echo - echo arguments to standard output SYNOPSIS
/usr/ucb/echo [-n] [argument] DESCRIPTION
echo writes its arguments, separated by BLANKs and terminated by a NEWLINE, to the standard output. echo is useful for producing diagnostics in command files and for sending known data into a pipe, and for displaying the contents of envi- ronment variables. For example, you can use echo to determine how many subdirectories below the root directory (/) is your current directory, as follows: o echo your current-working-directory's full pathname o pipe the output through tr to translate the path's embedded slash-characters into space-characters o pipe that output through wc -w for a count of the names in your path. example% /usr/bin/echo "echo $PWD | tr '/' ' ' | wc -w" See tr(1) and wc(1) for their functionality. The shells csh(1), ksh(1), and sh(1), each have an echo built-in command, which, by default, will have precedence, and will be invoked if the user calls echo without a full pathname. /usr/ucb/echo and csh's echo() have an -n option, but do not understand back-slashed escape characters. sh's echo(), ksh's echo(), and /usr/bin/echo, on the other hand, understand the black-slashed escape characters, and ksh's echo() also understands a as the audible bell character; however, these commands do not have an -n option. OPTIONS
-n Do not add the NEWLINE to the output. ATTRIBUTES
See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Availability |SUNWscpu | +-----------------------------+-----------------------------+ SEE ALSO
csh(1), echo(1), ksh(1), sh(1), tr(1), wc(1), attributes(5) NOTES
The -n option is a transition aid for BSD applications, and may not be supported in future releases. SunOS 5.10 3 Aug 1994 echo(1B)
All times are GMT -4. The time now is 09:02 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy