1.拉取鏡像
docker pull wnameless/oracle-xe-11g
2.運(yùn)行鏡像
docker run -d -v /home/docker/data/oracle_data:/data/oracle_data -p 49160:22 -p 49161:1521 -e ORACLE_ALLOW_REMOTE=true wnameless/oracle-xe-11g
-e oracle_allow_remote=true表示允許遠(yuǎn)程連接
至此,一個oracle服務(wù)就運(yùn)行起來了
連接參數(shù):
hostname: localhost
port: 49161
sid: xe
username: system
password: oracle

圖片.png
如何新建表空間和用戶:
1.進(jìn)入容器,連接到oracle服務(wù)
docker exec -it 容器id /bin/bash
su oracle
cd $ORACLE_HOME
bin/sqlplus / as sysdba
2.創(chuàng)建表空間
create tablespace TEST datafile '/u01/app/oracle/test/test.dbf' size 100M;
這一步可能會有問題,是因?yàn)槿萜骼?u01/app/oracle文件夾下不存在test目錄??梢韵仁謩有陆ㄒ粋€test目錄,再給這個目錄賦權(quán)限
cd /u01/app/oracle
mkdir test
chmod 777 test
然后再執(zhí)行create tablespace TEST datafile '/u01/app/oracle/test/test.dbf' size 100M;
3.創(chuàng)建用戶
create user TEST identified by TEST123 default tablespace TEST;
4.給用戶授權(quán)
grant connect,resource to TEST;
grant dba to TEST;//授予dba權(quán)限后,這個用戶能操作所有用戶的表
注:如果新建用戶失敗,可能是這個用戶已經(jīng)存在,要先刪除
drop user TEST cascade;