docker 安装oracle11g 并配置数据持久化
安装docker 安装oracle11g整个教程的截图备份根据此教程可以完整安装oracle, 接下来是持久化持久化查看启动参数命令runlike -p oracle11g进入容器命令docker exec -it oracle11g bash查看实例helowin 的实例安装在:/home/oracle/app/oracle/oradata/helowin 目录下拷贝数据到本地,并修改拥有者ex
安装
docker 安装oracle11g
整个教程的截图备份
根据此教程可以完整安装oracle, 接下来是持久化
持久化
# 删除测试镜像
# docker rm oracle11g
# 新建docker卷
docker volume create oracle-helowin
# 查看docker卷
docker volume ls
# 卷路径
find -name oracle-helowin
#cd ./var/lib/docker/volumes/oracle-helowin
# 创建持久化容器 ioracle
docker run -d -p 1521:1521 -v oracle-helowin:/home/oracle/app/oracle/oradata/helowin --name ioracle registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
重新配置oracle
run
是create+start
命令,创建后容器是运行的
直接进入容器
命令docker exec -it ioracle bash
切换root用户
su root
helowin //密码
编辑配置文件
命令 vi /etc/profile
按i
切换编辑模式
按Exc
退出编辑模式, 输入:wq
退出文本
在末尾加上如下配置
# oracle
export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_2
export ORACLE_SID=helowin
export PATH=$ORACLE_HOME/bin:$PATH
文件立刻生效source /etc/profile
创建软连接
ln -s $ORACLE_HOME/bin/sqlplus /usr/bin
切换用户
su - oracle //中间的连接符要加上
sqlplus / as sysdba //dba连接数据库
登录初始化
alter user system identified by system;
alter user sys identified by sys;
#也可以创建用户,并给用户赋予权限
create user test identified by test;
grant connect,resource,dba to test;
# 刷新
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
完成,可以远程连接了
退出
远程连接
sys
sys
192.168.232.130:1521/helowin //192.168.232.130-虚拟机或服务器ip
以下为探索记录, 不做任何参考
花了10个工作日的午休,没有成功探索出oracle配置持久化的方法,等以后再说
放弃参考
查看启动参数
命令runlike -p oracle11g
进入容器
命令docker exec -it oracle11g bash
查看实例
helowin 的实例安装在:/home/oracle/app/oracle/oradata/helowin 目录下
拷贝数据到本地,并修改拥有者
exit
mkdir /usr/local/docker
mkdir /usr/local/docker/oracle
docker cp oracle11g:/home/oracle/app/oracle/oradata/helowin /usr/local/docker/oracle/helowin
cd /usr/local/docker/oracle
chown -R 500.500 ./helowin # 500 500 是容器内 oracle 组合用户的 id
开机启动 docker update --restart=always oracle11g
持久化 docker update --v=/home/oracle/app/oracle/oradata/helowin :/usr/local/docker/oracle/helowin
#docker rm oracle11g
docker run -d -p 1521:1521 -v /home/oracle/app/oracle/oradata/helowin:/usr/local/docker/oracle/helowin --name oracle11 registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
直接安装
## 弃用
docker run -d -p 1521:1521 -v /usr/local/docker/oracle:/home/oracle --name oracle registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
/home/oracle/app/oraInventory
/home/oracle/app/oracle/oradata/helowin
docker start oracle
docker exec -it oracle bash
# chown -R 500.500 ./helowin
# docker run -d -p 1521:1521 -v /home/docker/oracle/helowin:/home/oracle/app/oracle/oradata/helowin --name oracle11 registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
docker volume create oracle-helowin
docker volume ls
find -name oracle-helowin
#cd ./var/lib/docker/volumes/oracle-helowin
docker run -d -p 1521:1521 -v oracle-helowin:/home/oracle/app/oracle/oradata/helowin --name ioracle registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
docker system df
# 删除所有关闭的容器:
docker ps -a | grep Exit | cut -d ' ' -f 1 | xargs docker rm
# 删除所有dangling镜像(即无tag的镜像):
docker rmi $(docker images | grep "^<none>" | awk "{print $3}")
# 删除所有dangling数据卷(即无用的Volume):
docker volume rm $(docker volume ls -qf dangling=true)
# 删除自定义数据卷
docker volume rm edc-nginx-vol
cp /home/oracle/app/oracle/oradata/helowin/control01.ctl /home/oracle/app/oracle/flash_recovery_area/helowin/control02.ctl
find -name alert_helowin.log
chown -R oracle.oinstall oradata
权限
更多推荐
所有评论(0)