1.虚拟机
1.1.安装虚拟机
1.2.一路无脑下一步,想要自己配置虚拟机可以自己配置
注意 :
用户名和密码需要记住,后续登录使用;
网络要选NAT 模式(N): 用于共享主机的 IP 地址
2.安装Docker
2.1 查看虚拟机内核
uname -r
# Dcoker要求CentOs系统的内核版本高于3.10
2.2 升级内核(最好升一下,要不后续有问题可能需要从头再来)
yum update
2.3 安装docker
# 默认会下载最新版的Docker
yum install docker
2.4 启动docker
systemctl start docker
启动过程可能会报以下错误 : SELinux不支持此内核上的overlay2图形驱动程序,将selinux禁用即可
Job for docker.service failed because the control process exited with error code. See "systemctl status docker.service" and "journalctl -xe" for details.
可以按照提示,输入systemctl status docker.service
命令查看错误提示
2.5 解决 :
vi /etc/sysconfig/docker
将selinux-enabled=false
再次启动docker就可以了.
3.安装Oracle
3.1 拉取镜像
docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
3.2 创建容器
docker run -d -p 1521:1521 --name oracle11g registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
3.3 查看容器是否创建成功
docker ps -a
3.4 启动容器
docker start oracle11g
3.5 进入容器
docker exec -it oracle11g bash
3.6 切换到root,配置文件,保存并让配置生效
su root
//初始密码为helowin
vi /etc/profile
export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_2
export ORACLE_SID=helowin
export PATH=$ORACLE_HOME/bin:$PATH
:wq
source /etc/profile
3.7 创建软连接
ln -s $ORACLE_HOME/bin/sqlplus /usr/bin
3.8 切换oracle用户 , 登录数据库
su - oracle
sqlplus / as sysdba
3.9 创建表空间 (如果/home/oralce下面,没有datafile需要手动创建)
create tablespace TBS_DATA logging datafile '/home/oracle/datafile/TBS_DATA.dbf' size 200M autoextend on next 100M maxsize 10G;
3.10 创建数据库用户 并赋予权限
create user vatdev identified by gpictest default tablespace TBS_DATA;
grant connect to vatdev;
grant resource to vatdev;
grant advisor to vatdev;
grant alter any table to vatdev;
grant alter user to vatdev;
grant analyze any to vatdev;
grant analyze any dictionary to vatdev;
grant create any index to vatdev;
grant create any job to vatdev;
grant create any table to vatdev;
grant create any trigger to vatdev;
grant create any view to vatdev with admin option;
grant create database link to vatdev;
grant create job to vatdev;
grant create materialized view to vatdev;
grant create procedure to vatdev;
grant create sequence to vatdev;
grant create session to vatdev;
grant create table to vatdev;
grant create type to vatdev;
grant create view to vatdev;
grant debug any procedure to vatdev;
grant debug connect session to vatdev;
grant delete any table to vatdev;
grant drop any table to vatdev;
grant execute any procedure to vatdev;
grant export full database to vatdev;
grant flashback any table to vatdev;
grant global query rewrite to vatdev;
grant import full database to vatdev;
grant insert any table to vatdev;
grant lock any table to vatdev;
grant manage scheduler to vatdev;
grant on commit refresh to vatdev;
grant query rewrite to vatdev;
grant select any table to vatdev;
grant unlimited tablespace to vatdev;
grant update any cube to vatdev;
grant create synonym to vatdev;
3.11 修改字符集
//不带分号的一定不要带哦 , 不然会报错
shutdown immediate
startup mount
alter system enable restricted session;
alter database open;
alter database character set zhs16gbk;
alter database character set internal_use zhs16gbk;
shutdown immediate
startup
3.12 exit退出;
切换root在容器的/home路径下创建logic文件夹并将dump文件放在logic文件夹下chmod 777 logic
3.13 切换oracle用户 登录oracle sqlplus / as sysdba
3.14 执行
create directory dmp_dir as '/home/logic';
grant read,write on directory dmp_dir to public;
3.15 执行导入dump文件命令
//将文件拷贝到docker容器中
docker cp /home/gst/Desktop/dump.DMP 容器id或者容器名称:/home/logic
impdp vatdev/gpictest directory=dmp_dir dumpfile=EXPDP_VATDEV_20230908.DMP SCHEMAS=vatdev transform=segment_attributes:n