docker能安裝oracle。安裝方法:1、拉取Oracle官方鏡像,可以利用“docker images”查看鏡像;2、啟動容器後利用“docker exec -it oracle11g bash”進入容器,並且編輯環境變數;3、利用“sqlplus /nolog”進入oracle命令列即可。
本教學操作環境:linux7.3系統、docker19.03版、Dell G3電腦。
可以用docker來部署oracle,而且好處很多。既能減少安裝的時間,又能夠快速進行部署。
使用docker部署的好處如下:
(1)簡化配置,建置一次後打包後就可以用作測試環境,也可以用作生產環境或與預生產環境,可以省去很多測試環節。例如一台伺服器可以進行測試多個版本的測試,不用等待。
(2)可以解決開發人員部署環境的困難,好比如一個剛來的新同事安裝環境可能需要半天時間,但要是直接運行一個已經配好的容器的話就方便多了。
(3)應用隔離,伺服器整合,一個伺服器可以用docker部署多套業務,並且隔離性很高(除了虛擬機)。
(4)對於開發來說部署好之後到處運行便於開發調試。
(5)可以減少資源的利用,和虛擬機器比較省去了很多不必要的資源,損失的隔離性其他的優點足以彌補。
(6)對於維運來說,可以快速的進行擴容,減少原利用率
(7)每個小的服務都可以進行集群,docker對資源的利用比較小,可以在一台伺服器啟動多台,相比其他產品對伺服器的I/O使用上要多。
(8)可以多平台部署
範例如下:
在Linux中安裝oracle非常麻煩,相信每個人也會遇到各種坑。為了一次裝好,也方便將來直接可以導出鏡像在各平台移植使用,所以選擇用docker安裝
在DockerHub 上搜尋Oracle 可以找到Oracle 的官方鏡像,位址:https://hub.docker.com/
注意,這裡使用docker pull oraclelinux
指令,是拉取不到映像的,因為它沒有latest 標籤。因此,只能手動指定它的版本號
例如docker pull oraclelinux
# 使用官方映像下載速度非常慢,因此,我們可以使用阿里映像# docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
在dockerHub 上可以搜到(第二個),可以參考這個配置
使用docker images
查看映像,確認已經下載完成
docker run -d -it -p 1521:1521 --name oracle11g --restart=always registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
docker run -d -it -p 1521:1521 --name oracle --restart=always --mount source=oracle_vol,target=/home/oracle/app/oracle/oradata registry.cn-hangzhou.aliyuncs.com /helowin/oracle_11g
查看啟動的執行緒netstat -tulnp
## 檢視運行狀態
docker ps -a
#
進入容器docker exec -it oracle11g bash
切換到root 使用者su root
,密碼為helowin
docker容器配置環境變數不是在/etc/profile
中,容器啟動不會走這個檔案。
可以將環境變數的配置設定在 /home/oracle/.bashrc
檔案下,這樣可以省略掉軟連線的建立ln -s $ORACLE_HOME/bin/sqlplus /usr/ bin
編輯環境變數vi /home/oracle/.bashrc
,在檔案最後加入以下指令
export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_2 export ORACLE_SID=helowin export PATH=$ORACLE_HOME/bin:$PATH
wq
儲存並退出。然後使用source /home/oracle/.bashrc
刷新環境變量,並使其生效
使用sqlplus /nolog
su - oracle sqlplus /nolog conn / as sysdba select instance_name from v$instance; show user;###使用上述指令查出來的,就是所有可用的「資料庫名” 和“用戶名”############阿里的這個鏡像,所有的密碼都是統一的###helowin#########system用戶具有DBA權限,但是沒有SYSDBA權限。平常一般用該帳號管理資料庫。 ### 而sys使用者是Oracle資料庫中權限最高的帳號,具有「SYSDBA」和「SYSOPER」權限,一般不允許從外部登入##############設定防火牆## ####防火牆要允許1521 端口,外部的資料庫管理工具才能連的上###
# 打开防火墙 systemctl start firewalld # 查询端口状态 firewall-cmd --query-port=1521/tcp # 永久性开放端口 firewall-cmd --permanent --zone=public --add-port=1521/tcp # 重启防火墙 firewall-cmd --reload firewall-cmd --query-port=1521/tcp############推薦學習:《###docker影片教學###》# ##
以上是docker能安裝oracle嗎的詳細內容。更多資訊請關注PHP中文網其他相關文章!