Foros del Web » Administración de Sistemas » Unix / Linux »

archivo .sh para automatizar un proceso

Estas en el tema de archivo .sh para automatizar un proceso en el foro de Unix / Linux en Foros del Web. Estimados foreros, quisiera por favor me permitan realizar una consulta y es que cada vez que tengo que restaurar mi base de datos (oracle 11g ...
  #1 (permalink)  
Antiguo 06/05/2018, 20:01
Avatar de eschwartz  
Fecha de Ingreso: enero-2002
Ubicación: Chosica
Mensajes: 1.098
Antigüedad: 22 años, 11 meses
Puntos: 8
archivo .sh para automatizar un proceso

Estimados foreros, quisiera por favor me permitan realizar una consulta y es que cada vez que tengo que restaurar mi base de datos (oracle 11g sobre oracle linux) virtualizada con vmware, tengo que eliminar entre otros objetos de la base de datos las tablas de un esquema determinado ejecutando un select de este tipo

SELECT 'DROP TABLE '||TABLE_NAME||' CASCADE CONSTRAINTS PURGE;' FROM ALL_TABLES WHERE OWNER = 'MIESQUEMA';

genero el select y ejecuto el resultado desde el plsql y luego hago la restauracion de mi base de datos con un dmp actualizado, lo que intento hacer es q por medio de la ejecucion de un archivo .sh pueda realizar esta tarea simplemente ejecutando este archivo, como le digo tengo que eliminar tablas, vistas, packages etc....existe alguna posiblidad que pueda hacer esto? si alguien me puede ayudar con algun tip se lo agradeceria infinitamente.
muchas gracias.
__________________
"Si miras fijamente la realidad, veras los pixeles"
------------------------------------------------------------------
ESOFT - SCHWARTZ GROUP ©
http://www.esoft.host56.com/
  #2 (permalink)  
Antiguo 09/05/2018, 11:37
Avatar de lauser
Moderator Unix/Linux
 
Fecha de Ingreso: julio-2013
Ubicación: Odessa (Ukrania)
Mensajes: 3.278
Antigüedad: 11 años, 5 meses
Puntos: 401
Respuesta: archivo .sh para automatizar un proceso

Como orientación, seria algo similar a...

#!/bin/sh
#Define parametros de conexión
sql_host=”localhost”
slq_usuario=”root”
sql_password=”password”
sql_database=”name_db”
#Monta los parámetros
sql_args=”-h $sql_host -u $slq_usuario -p$sql_password -D $sql_database -s -e”
#Sentencia Sql
mysql $sql_args “SELECT 'DROP TABLE '||TABLE_NAME||' CASCADE CONSTRAINTS PURGE;' FROM ALL_TABLES WHERE OWNER = 'MIESQUEMA';”


Dale permisos.
Código BASH:
Ver original
  1. chmod u+x ejem.sh
__________________
Los usuarios que te responden, lo hacen altruistamente y sin ánimo de lucro con el único fin de ayudarte. Se paciente y agradecido.
-SOLOLINUX-

Etiquetas: automatizar, linux, proceso
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:28.