|
#!/bin/bash |
|
|
|
set -e |
|
export ORACLE_VERSION="12.1.0.2.0" |
|
mkdir -p /usr/local/Oracle/product/instantclient/$ORACLE_VERSION/bin |
|
mkdir -p /usr/local/Oracle/product/instantclient/$ORACLE_VERSION/lib |
|
mkdir -p /usr/local/Oracle/product/instantclient/$ORACLE_VERSION/jdbc/lib |
|
mkdir -p /usr/local/Oracle/product/instantclient/$ORACLE_VERSION/rdbms/jlib |
|
mkdir -p /usr/local/Oracle/product/instantclient/$ORACLE_VERSION/sqlplus/admin |
|
|
|
#ensure we have all of the files we need |
|
if [ ! -f sqlplus ] |
|
then |
|
echo "instantclient-sqlplus not downloaded, exiting...." |
|
exit 1 |
|
fi |
|
|
|
if [ ! -d sdk ] |
|
then |
|
echo "ERROR: instantclient-sdk not downloaded, exiting...." |
|
exit 1 |
|
fi |
|
mv ojdbc* /usr/local/Oracle/product/instantclient/$ORACLE_VERSION/jdbc/lib/ |
|
if [ $? -ne 0 ] |
|
then |
|
echo "ERROR: cannot find ojdbc drivers, instantclient-basic not installed, exiting" |
|
exit 1 |
|
fi |
|
mv sdk /usr/local/Oracle/product/instantclient/$ORACLE_VERSION/lib/ |
|
mv x*.jar /usr/local/Oracle/product/instantclient/$ORACLE_VERSION/rdbms/jlib/ |
|
mv glogin.sql /usr/local/Oracle/product/instantclient/$ORACLE_VERSION/sqlplus/admin/ |
|
mv *dylib* /usr/local/Oracle/product/instantclient/$ORACLE_VERSION/lib/ |
|
mv *README /usr/local/Oracle/product/instantclient/$ORACLE_VERSION/ |
|
mv * /usr/local/Oracle/product/instantclient/$ORACLE_VERSION/bin/ |
|
cd /usr/local/bin |
|
ln -s ../Oracle/product/instantclient/$ORACLE_VERSION/bin/sqlplus sqlplus |
|
|
|
cd /usr/local/Oracle/product/instantclient/$ORACLE_VERSION |
|
mkdir -p share/instantclient |
|
cd /usr/local/share |
|
ln -s ../Oracle/product/instantclient/$ORACLE_VERSION/share/instantclient/ instantclient |
|
cd /usr/local/Oracle/product/instantclient/$ORACLE_VERSION/lib |
|
ln -s libclntsh.dylib.12.1 libclntsh.dylib |
|
|
|
echo " |
|
export ORACLE_VERSION=$ORACLE_VERSION |
|
export ORACLE_BASE=/usr/local/Oracle |
|
export ORACLE_HOME=\$ORACLE_BASE/product/instantclient/$ORACLE_VERSION |
|
export DYLD_LIBRARY_PATH=\$ORACLE_HOME/lib |
|
export OCI_DIR=\$DYLD_LIBRARY_PATH |
|
export TNS_ADMIN=\$ORACLE_BASE/admin/network |
|
" > /usr/local/share/instantclient/instantclient.sh |
|
|
|
echo "Done!" |
|
echo |
|
echo "Next step: Add the following code to your ~/.bashrc" |
|
echo "source /usr/local/share/instantclient/instantclient.sh" |
|
exit 0 |
Hi, thank you for the script, I modified it a little so I can easily re-run it multiple times. I had to do so because I had incorrect installation of the sqlplus before and it was reporting errors that it cannot create file links.
The change is following:
ln -s
->ln -sf