Mac 使用docker安装oracle,导入dmp数据库。

1. 安装docker,地址:https://hub.docker.com/?overlay=onboarding    安装成功之后,检查docker是否安装成功。  docker --version

2. 安装,地址:https://hub.docker.com/r/deepdiver/docker-oracle-xe-11g 

使用命令行运行,运行后,等待下载。

3. 安装成功之后,

  1.  
  2.   docker ps 查看容器id。
  3.   docker exec -it   947c0244f490  /bin/bash  进入容器。 (横线替换)
  4. 创建用户,给用户赋予 sysdata 权限。
    1. 创建用户:

       软连接 :  sqlplus   /nolog     

    2.  

      conn sys/ as sysdba;默认密码change_on_install

      create user test identified by test;  创建用户

       

      grant sysdba to test;                         给用户赋予权限

    3. 遇到问题:

      1. 问题:

        Connected to: Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Productio

        Export file created by EXPORT:V10.02.01 via conventional path

        IMP-00013: only a DBA can import a file exported by another DBA

        IMP-00000: Import terminated unsuccessfully

        解决: GRANT IMP_FULL_DATABASE to tj32lijj 
      2. 问题:
        1. ORA-01045: user lacks CREATE SESSION privilege
        2. grant create session,resource to 用户
  5. 导包到docker中。
    1. 先在很目录创建文件  mkdir /home/oracle
    2. 将dmp包放入该文件下
      1.    docker cp /home/production/112.dmp 947c0244f490:/home/oracle/
      2.                        dmp文件的全路径                 容器id           复制到容器中的路径
    3. 导入成功。
  6. imp 导包  
    imp 用户名/密码@ocl file=/home/oracle/test.dmp full=y ignore=y
    1. 如果导入不成功: 
      imp 用户名/密码@127.0.0.1@ocl file=/home/oracle/test.dmp full=y ignore=y
    2. ocl 为服务器名称, alter system set service_names='ocl' scope=both;  可通过该命令修改想要的服务名称。
  7. 导入成功。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值