背景
因為最近公司要使用oracle數據庫,所以自己嘗試着安裝一下oracle這里遇見了好多坑,希望可以幫到有需要的人
1、安裝oracle
docker search oracle

這里使用的是國內的鏡像安裝的
docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g

查看鏡像docker images

安裝鏡像
docker run --name myOracle -d -p 1521:1521 registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g

查看運行的鏡像

發現oracle已經安裝成功
2、配置oracle環境參數
進入鏡像
docker exec -it myOracle bash

修改/etc/profile文件
這里需要使用root用戶權限
用戶名:root 密碼:helowin
# oracle home目錄
export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_2
# oracle 服務名或者 SID名,要記住這個名字helowin,它是naivcat登錄的重要選項
export ORACLE_SID=helowin
# oracle環境變量
export PATH=$ORACLE_HOME/bin:$PATH


要記住export ORACLE_SID=helowin,helowin是naivcat登錄的重要選項,最后使用指令source /etc/profile使環境變量立即生效
創建軟連接,使用命令ln -s $ORACLE_HOME/bin/sqlplus /usr/bin

使用sqlplus /nolog查看oracle並准備鏈接

鏈接oracle,發現鏈接失敗,如果你能鏈接成功,就可以直接進行下邊的操作

這里沒連接上是因為沒有切換到oracle用戶下
su oracle,查看連接oracle:sqlplus /nolog conn /as sysdba

修改system的密碼並設置密碼的有效時間為無限
SQL> alter user system identified by oracle;
User altered.
SQL> ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
Profile altered.


這時候創建表空間發現失敗

執行show parameter db_create_file;

設置表空間位置ALTER SYSTEM SET db_create_file_dest = "/home/oracle/app/oracle/oradata";

再創建表空間發現能創建成功
create tablespace testTablespace;

3、連接數據庫

特別感謝https://blog.csdn.net/qq_38796548/article/details/108406354;https://blog.csdn.net/yuan52007298/article/details/104896529兩位作者
