2019年4月9日火曜日

CentOS7 に sqlplus インストール

https://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html

oracle-instantclient 18.5-basic-18.5.0.0.0-3.x86_64.rpm
oracle-instantclient18.5-sqlplus-18.5.0.0.0-3.x86_64.rpm

# yum install -y libaio
# rpm -ivh oracle-instantclient18.5-basic-18.5.0.0.0-3.x86_64.rpm
# rpm -ivh oracle-instantclient18.5-sqlplus-18.5.0.0.0-3.x86_64.rpm
# ls -l /usr/lib/oracle/18.5/client64/lib 確認
# echo "/usr/lib/oracle/18.5/client64/lib" >> /etc/ld.so.conf.d/oracle.conf
# cat !$ 確認
# ldconfig
# sqlplus64

SQL*Plus: Release 18.0.0.0.0 - Production on Tue Apr 9 19:01:08 2019
Version 18.5.0.0.0
Copyright (c) 1982, 2018, Oracle. All rights reserved.
Enter user-name:

[カーソルキーを使えるようにする]
# yum -y install rlwrap
# mkdir  -p /usr/local/opt/rlwrap-extensions
# cd /usr/local/opt/rlwrap-extensions
# wget http://www.linuxification.at/download/rlwrap-extensions-V11-0.05.tar.gz (11gの場合)
# tar xzvf rlwrap-extensions-V11-0.05.tar.gz     <-辞書
# vi /etc/profile.d/oracle.sh  
alias sqlplus='rlwrap -pRed -if /usr/local/opt/rlwrap-extensions/sqlplus sqlplus'


[12g]
# wget http://www.linuxification.at/download/rlwrap-extensions-V12-0.05.tar.gz (12gの場
# tar xzvf rlwrap-extensions-V12-0.05.tar.gz     <-辞書
# vi /usr/local/opt/rlwrap-extensions/sql+
R_HOME=${RLWRAP_HOME:=/usr/local/opt/rlwrap-extensions}
# cd /usr/local/bin
# ln -s  /usr/local/opt/rlwrap-extensions/asm+ asm+
# ln -s  /usr/local/opt/rlwrap-extensions/sql+ sql+

※ rlwap インストールには、epel リポジトリが必要。
[rocky]
# dnf config-manager --set-enabled powertools
# dnf install epel-release

[参考]



$ sqlplus user/password@192.168.1.xxx:1521/sid
$ sqlplus  system/oracle@192.168.25.131:1521/arcsdbms

SQL> @calc.sql
 13 ;

[sample]
$ vi calc.sql
with
CALC as (
SELECT
TO_DATE('20190405', 'yyyymmdd') - (ROWNUM - 1) as cdate
FROM ALL_CATALOG
WHERE TO_DATE('20190405', 'yyyymmdd') - (ROWNUM - 1) >= TO_DATE('20190315', 'yyyymmdd')
ORDER BY 1 desc
)
select
TO_CHAR(c.cdate, 'yyyymmdd') as cdate,
'('||SUBSTR(TO_CHAR(c.cdate, 'day','NLS_DATE_LANGUAGE=JAPANESE'),1,1)||')' as cday
from CALC c

シャットダウン時の後処理 (shutdown)

# vi /etc/systemd/system/drop.service [Unit] Description= stop httpgwd DefaultDependencies=no Before=shutdown.target RefuseManualStart=true ...