一、背景说明
由于测试需要需要在服务器上安装oracle数据库,需要安装oracle的主机不能直接联网,需要从其他主机上下载好镜像导出,并导入该服务器,并创建数据库。
二、Docker安装
- 使用yum安装docker。由于机器上装有之前版本的docker,需要先卸载再安装。
- 卸载docker并删除docker目录
yum revome docker
rm -rf /var/log/docker
- 安装docker
yum install docker -y
- 更改docker目录到数据盘
mv /var/log/docker /mnt/bd/data/docker
ln -s /mnt/bd/data/docker /var/log/docker
- 启动docker
systemctl start docker
三、镜像下载与导入导出
- 搜索oracle镜像
docker search oracle
- 下载镜像
docker pull absolutapps/oracle-12c-ee
- 导出镜像
docker save -o oracle_image.tar
docker save > oracle_image.tar
- 导入镜像
docker load —input orale_image.tar
docker load < oracle_image.tar
- docker加载新的镜像后repository和tag名称都为none
docker tag {imageId} absolutapps/oracle-12c-ee:latest
四、创建Oracle容器
- 根据镜像创建docker容器
docker run -d --name oracle-dev01 --privileged -p 19090:8080 -p 11521:1521 absolutapps/oracle-12c-ee
- 查看容器创建进度
docker logs -f oracle-dev01
- 进入容器
docker exec -it /bin/bash oracle-dev01
- 修改时区
# 修改系统时区
tzselect
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
echo "Asia/Shanghai" > /etc/timezone
# 修改oracle时区
su oracle
sqlplus / as sysdba
alter database set time_zone='+08:00';
# 重启数据库
shutdown immediate
startup
# 修改用户名密码永久有效
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
五、创建数据库用户
- 登陆数据库
sqlplus system/oracle@//localhost:1521/orcl
- 创建用户
create user scott identified by tiger;
grant connect, resource to scott;
alter user scott quota unlimited on USERS;