通過Docker 安裝 Oracle18c
1、拉取 oracle18c 鏡像
docker pull registry.cn-hangzhou.aliyuncs.com/zhengqing/oracle18c
2、運行
docker run -d --name oracle18c -p 1521:1521 -v /IT_zhengqing/soft/db/oracle18c/data:/opt/oracle registry.cn-hangzhou.aliyuncs.com/zhengqing/oracle18c
運行之後查看容器日誌等待出現如下信息即可
3、進入容器設置密碼
進入容器後有個 setPassword.sh 腳本
執行如下命令設置密碼
./setPassword.sh 123456 # 123456為設置密碼,這裡修改為自己的即可
4、依次執行如下命令進入oracle並設置 PDB
grep $ORACLE_HOME /etc/oratab | cut -d: -f1
export ORACLE_SID=ORCLCDB
sqlplus / as sysdba
設置pdb
show pdbs;
alter session set container=ORCLPDB1;
注:每次登錄都要設置 ORACLE_SID 環境變量,可以將這個寫到~/.bashrc文件裡去 ,執行如下命令
host echo "export ORACLE_SID=ORCLCDB" >> ~/.bashrc
5、最後測試登錄
sqlplus 用戶名/密碼@服務名 # ex: sqlplus SYSTEM/123456@ORCLPDB1
Navicat遠程連接測試
就這樣,一個簡單的 Oracle18c 安裝基本就完成了。
導入 導出 Oracle表數據 dmp文件
# 拷貝dmp數據文件到容器中
docker cp /home/oracle18c/hb20191128.dmp oracle18c:/tmp # oracle18c:容器名 前:宿主機文件路徑 後:容器保存目錄
# 導入
imp 用戶名/密碼@網絡服務名 file=文件名.dmp full=y; # ex: imp SYSTEM/123456@ORCLPDB1 file=hb20191128.dmp full=y;
# 導出多個表時,表名使用逗號隔開如: tables=(table1,table2,table3)
exp 用戶名/密碼@網絡服務名 file=文件名.dmp tables=(表名);
# 導出整個數據庫
exp 用戶名/密碼@網絡服務名 file=文件名.dmp full=y;
閱讀更多 鄭清 的文章