91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Shell腳本如何連接oracle數據庫

發布時間:2021-03-20 14:09:05 來源:億速云 閱讀:2731 作者:小新 欄目:開發技術

這篇文章給大家分享的是有關Shell腳本如何連接oracle數據庫的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

最近研究了一下怎樣使用shell 腳本連接數據庫,然后執行查詢語句。這樣對于需要定時執行的腳本,我們可以建個 crontab 去定時執行。

先介紹一下客戶端的安裝:

linux 環境需要用 sqlplus 客戶端去連接oracle 數據庫,首先我們需要確認有沒有安裝:which sqlplus如果沒有安裝就需要先安裝一下,安裝步驟如下:

到oracle 官網下載,之后安裝以下兩個模塊:

rpm -ivh oracle-instantclient11.2-basic-11.2.0.3.0-1.x86_64.rpm 
rpm -ivh oracle-instantclient11.2-sqlplus-11.2.0.3.0-1.x86_64.rpm

配置環境變量:
vim /etc/profile

Shell腳本如何連接oracle數據庫

保存之后,執行: source /etc/profile

whereis oracle #查看oracle 客戶端安裝路徑

Shell腳本如何連接oracle數據庫 

進入客戶端目錄

Shell腳本如何連接oracle數據庫 

添加配置文件:touch tnsnames.ora
編輯配置文件:vim tnsnames.ora

DATABASENAME =
 (DESCRIPTION =
 (ADDRESS_LIST =
  (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
 )
 (CONNECT_DATA =
  (SERVICE_NAME = servicename)
 )
 )

編輯保存完成以后,可以用命令行測試是否連接成功

sqlplus username/password@DATABASENAME

如果正常的話,就可以順利的連上oracle 數據庫了。
那我們就開始寫自己的shell 腳本:

#! /bin/bash
sqlplus username/password@DATABASENAME >tmp.txt << EOF
set heading off
set line 4000
set WRAP OFF
Select user_id,mobile From txlx_xxx_user_info Where rownum <20;
exit
EOF
sed -i 1,12d tmp.txt
sed -i -e '/selected/,$d' tmp.txt
sed -i -e '/Disconnected/,$d' tmp.txt
sed -i '$d' tmp.txt

逐行解釋一下:

#!/bin/bash #shell 腳本開頭,指定使用哪種shell
連接數據庫語句,標準輸出到 tmp.txt,從<<EOF 之間獲取輸入
去掉表頭
設置行寬度
關閉自動換行
查詢語句
退出
EOF 輸入結束
sed 刪除tmp.txt 1~12 行連接數據庫產生的文本
刪除 selected 到最后一行的文本
刪除 Disconnected 到最后一行的文本
刪除最后一行文本

感謝各位的閱讀!關于“Shell腳本如何連接oracle數據庫”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

宿州市| 合作市| 柯坪县| 绥中县| 蒙阴县| 赣榆县| 同德县| 南阳市| 正蓝旗| 福泉市| 长岛县| 盈江县| 门头沟区| 伊宁县| 汽车| 伊通| 行唐县| 尤溪县| 内乡县| 威远县| 弥渡县| 射洪县| 宣威市| 乐陵市| 宜春市| 广德县| 额济纳旗| 彩票| 小金县| 永修县| 镇巴县| 吴川市| 黑龙江省| 独山县| 抚州市| 江西省| 富蕴县| 荣昌县| 聂荣县| 庆安县| 五台县|