0% found this document useful (1 vote)
209 views10 pages

Create Xmeta DB

This script creates the database schema, tablespace, and user for an IBM Information Server metadata repository in an Oracle database. It takes Oracle credentials and configuration details as input parameters to connect to the database and run SQL scripts to create the necessary database objects.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (1 vote)
209 views10 pages

Create Xmeta DB

This script creates the database schema, tablespace, and user for an IBM Information Server metadata repository in an Oracle database. It takes Oracle credentials and configuration details as input parameters to connect to the database and run SQL scripts to create the necessary database objects.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 10

#!

/bin/sh

# ==============================================================================

# IBM Information Server metadata repository user and tablespace creation for

# Oracle 12c

# Copyright (C) 2009-2017 IBM Corporation. All rights reserved.

# ==============================================================================

TRUE=0

FALSE=1

showUsage() {

echo

echo ' Usage: create_xmeta_db <OracleSystemName> <OracleSystemPassword> <ServiceName>


<XmetaUserName> <XmetaUserPassword> <XmetaTablespaceName> <XmetaDatafilePath>'

echo

echo Sample: create_xmeta_db SYSTEM MANAGER DBNAME xmetauser xmetapwd xmetaspace


/u01/app/oracle/oradata/dbname

echo

echo Parameters:

echo

echo ' <OracleSystemUser>'

echo Oracle system user to login to sqlplus with to create the tablespace and

echo user. This user must be assigned the DBA role.

echo

echo ' <OracleSystemPassword>'

echo Password for the Oracle system user.

echo
echo ' <ServiceName>'

echo Oracle TNS service name. This must be a working service name.

echo

echo ' <XmetaUserName>'

echo Name of the Oracle user to create for the metadata repository tablespace.

echo

echo ' <XmetaUserPassword>'

echo Password for the metadata repository tablespace user.

echo

echo ' <XmetaTableSpaceName>'

echo Name of the metadata repository tablespace.

echo

echo ' <XmetaDatafilePath>'

echo Location where the tablespace data files will be created. It must be an

echo ' existing path. Do not add a trailing slash or backslash ("/" or "\").'

echo

echo Example: /u01/app/oracle/oradata/dbname

echo

exit 1

isCygwin() {

case `uname` in

CYGWIN*) #cygwin-specific stuff

echo $TRUE

return $TRUE

;;

esac
echo $FALSE

return $FALSE

missingFile() {

echo

echo Required file $1 'was not found.'

exit 1

stepFailed() {

echo

echo An error occurred while $1

echo

echo See the file $2 for more information.

echo

echo CREATION FAILED >> $3

echo >> $3

exit 1

if [ "'echo -n'" = "-n" ]; then

n=""; c="\c"

else

n="-n"; c=""

fi
# Capture parameters and set the variables:

SYS_USER_NAME=$1

SYS_USER_PASSWORD=$2

SYS_SERVICE_NAME=$3

XMETA_USER_NAME=$4

XMETA_USER_PASSWORD=$5

XMETA_TABLESPACE_NAME=$6

XMETA_DATAFILE_PATH=$7

AS_SYSDBA=" AS SYSDBA"

SQLPLUS_OPTIONS=$SYS_USER_NAME/$SYS_USER_PASSWORD@$SYS_SERVICE_NAME

# ===$AS_SYSDBA

# ==============================================================================

clear

#echo $SQLPLUS_OPTIONS

if [ "$SYS_USER_NAME" = "" ];

then

showUsage

fi

if [ "$SYS_USER_PASSWORD" = "" ];

then

showUsage

fi

if [ "$XMETA_USER_NAME" = "" ];

then
showUsage

fi

if [ "$XMETA_USER_PASSWORD" = "" ];

then

showUsage

fi

if [ "$SYS_SERVICE_NAME" = "" ];

then

showUsage

fi

if [ "$XMETA_DATAFILE_PATH" = "" ];

then

showUsage

fi

if [ "$XMETA_TABLESPACE_NAME" = "" ];

then

showUsage

fi

# ==============================================================================

# ==============================================================================

# Check for expected files:

echo Checking Required files....

# ==============================================================================

STEP_DSC='Checking Required File.'

REQUIRED_FILE=create_xmeta_db_tablespace.sql
if [ ! -f $REQUIRED_FILE ];

then

missingFile $REQUIRED_FILE

fi

REQUIRED_FILE=configure_xmeta_db.sql

if [ ! -f $REQUIRED_FILE ];

then

missingFile $REQUIRED_FILE

fi

REQUIRED_FILE=create_xmeta_db_user.sql

if [ ! -f $REQUIRED_FILE ];

then

missingFile $REQUIRED_FILE

fi

# ==============================================================================

# ==============================================================================

# Echo and get confirmation if appropriate:

echo setting datafile path ...

echo

if [ `isCygwin` = $TRUE ]; then

XMETA_DATAFILE=`cygpath -w $XMETA_DATAFILE_PATH/$XMETA_TABLESPACE_NAME.dbf`

else

XMETA_DATAFILE=$XMETA_DATAFILE_PATH/$XMETA_TABLESPACE_NAME.dbf
fi

REQUIRED_FILE=$XMETA_DATAFILE_PATH

#Check if data file path is in ASM

#if data file path is in ASM it always starts with +

isASMFilePath=${XMETA_DATAFILE_PATH:0:1}

if [ "$isASMFilePath" != "+" ] && [ ! -d $REQUIRED_FILE ]

then

echo DataFilePath Error: $REQUIRED_FILE must be a valid directory which exists.

exit 1

fi

echo

echo The IBM Information Server metadata repository database will be created:

echo

echo Oracle SID : $SYS_SERVICE_NAME

echo Tablespace : $XMETA_TABLESPACE_NAME

echo Schema name : $XMETA_USER_NAME

echo Data file : $XMETA_DATAFILE

echo

echo $n 'Press [CTRL/C]; to abort or [ENTER] to continue' $c; read ans

# ==============================================================================
OUTFILE=create_xmeta_db.log

echo >> $OUTFILE

date >> $OUTFILE

echo Metadata repository database info: >> $OUTFILE

echo >> $OUTFILE

echo Oracle SID: $SYS_SERVICE_NAME >> $OUTFILE

echo Tablespace name to be created: $XMETA_TABLESPACE_NAME >> $OUTFILE

echo Schema name to be created: $XMETA_USER_NAME >> $OUTFILE

echo Data file spec: $XMETA_DATAFILE >> $OUTFILE

# ==============================================================================

# Create Oracle Metadata repository Schema

# ==============================================================================

echo Creating tablespace .....

STEP_LOG=ORACLE_XMETA_TABLESPACE.log

if [ -f $STEP_LOG ];

then

rm $STEP_LOG

fi

sqlplus -S -L $SQLPLUS_OPTIONS @create_xmeta_db_tablespace.sql $XMETA_TABLESPACE_NAME


$XMETA_DATAFILE

if [ "$?" = "1" ];

then

stepFailed 'Creating metadata repository tablespace' $STEP_LOG $OUTFILE

fi

echo Tablespace created successfully

# ==============================================================================
echo Modifying DB config

STEP_LOG=config_xmeta_db.log

if [ -f $STEP_LOG ];

then

rm $STEP_LOG

fi

sqlplus -S -L $SQLPLUS_OPTIONS @configure_xmeta_db.sql

if [ "$?" = "1" ];

then

stepFailed 'Configuring metadata repository database' $STEP_LOG $OUTFILE

fi

echo Database configuration modified successfully

# ========================================================================

echo Creating metadata repository user .....

STEP_LOG=ORACLE_XMETA_USER.log

if [ -f $STEP_LOG ];

then

rm $STEP_LOG

fi

sqlplus -S -L $SQLPLUS_OPTIONS @create_xmeta_db_user.sql $XMETA_USER_NAME


$XMETA_USER_PASSWORD $XMETA_TABLESPACE_NAME

if [ "$?" = "1" ];

then

stepFailed 'Creating metadata repository user' $STEP_LOG $OUTFILE

fi

echo User created successfully

# ==============================================================================
echo $0 completed

echo COMPLETED SUCCESSFULLY >> $OUTFILE

echo >> $OUTFILE

You might also like