首页 > 数据库 >Docker 安装 Oracle创建表空间并导入数据库

Docker 安装 Oracle创建表空间并导入数据库

时间:2024-10-17 14:46:57浏览次数:9  
标签:sysdba 数据库 ORM oracle 导入 directory Oracle Docker create

一、Docker 安装Oracle

1、检查docker 版本

2、docker 下载镜像

3、 docker启动容器

4、  进入容器内部

5、安装成功,使用客户端工具连接

二、创建数据库用户与表空间

1、查询数据库文件位置

2、创建表空间

3、创建用户

4、设置权限

三、导出数据库DMP

1、上传文件到指定目录

2、创建权限目录

3、执行oracle-expdp导出

四、导入oracle dmp文件

1、创建权限目录

2、导入oracle dmp文件


一、Docker 安装Oracle

1、检查docker 版本

docker version

2、docker 下载镜像

docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g

3、 docker启动容器

docker run -d -p 30026:1521 -p 8081:8080 --name oracle_11g -e ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_2 -e ORACLE_SID=helowin registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g

4、  进入容器内部

docker exec -it oracle_11g bash

# 1. 切换至root用户(默认是oracle用户),密码为helowin
su root

# 2. 创建软链接
ln -s $ORACLE_HOME/bin/sqlplus /usr/bin

# 3.切换回oracle用户
su oracle

# 4. 登录sql plus
sqlplus /nolog
conn /as sysdba
## 4.1 修改system用户密码为system
alter user system identified by system;
## 4.2 修改sys用户密码为system
alter user sys identified by system;
## 4.3 新增一个测试用户(用户名:test,密码:test123);
create user test identified by test123;
## 4.4 将dba权限给内部管理员账号和密码
grant connect,resource,dba to SYS_ORM;
## 4.5 修改密码策略规则为:密码永不过期
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
## 4.6 修改数据库最大连接数;
alter system set processes=1000 scope=spfile;
## 4.7 最后重启数据库;
shutdown immediate;
startup;

# 5.退出
exit

5、安装成功,使用客户端工具连接

二、创建数据库用户与表空间

1、查询数据库文件位置

 select t1.name,t2.name  from v$tablespace t1,v$datafile t2  where t1.ts# = t2.ts#;

2、创建表空间

用sysdba登陆,sqlplus /@sysware as sysdba /PLSQL使用SYSDBA 登录执行

CREATE TABLESPACE ORM
DATAFILE '/home/oracle/app/oracle/oradata/helowin/orm.dbf' size 800M  	   --存储地址 初始大小800M
	autoextend on next 50M maxsize unlimited                   --每次扩展10M,无限制扩展
         EXTENT MANAGEMENT LOCAL autoallocate SEGMENT SPACE MANAGEMENT AUTO; 

3、创建用户

用sysdba登陆,sqlplus /@sysware as sysdba /PLSQL使用SYSDBA 登录执行

create user 用户名 identified by 密码 default tablespace 表空间名;  

create user ORM identified by ORM default tablespace ORM;  

4、设置权限

用sysdba登陆,sqlplus /@sysware as sysdba /PLSQL使用SYSDBA 登录执行

grant connect,resource,create type,create view,recovery_catalog_owner to 用户名
--注意:禁止使用:imp_full_database权限

grant connect,resource,create type,create view,recovery_catalog_owner to ORM;

三、导出数据库DMP

注意:导出需要记录用户名、表空间名,导入需要用到

1、上传文件到指定目录

docker cp  /home/imp e5w3hr4rrre3:/home/ormexp

2、创建权限目录

用sysdba登陆,
create directory 授权目录名 as '授权目录';   
grant read,write on directory 授权目录名 to 数据库用户名;

# 切换oracle用户:
su - oracle
# 管理员登录
sqlplus sys/system@orcl as sysdba

create directory ormExp as '/home/ormexp';   
grant read,write on directory ormExp to ORM;

3、执行oracle-expdp导出

在cmd、用户窗口执行:

expdp 数据库用户名/数据库密码@sysware directory=授权目录名 dumpfile=数据文件名称.dmp

expdp ORM/ORM@orcl directory=ormExp dumpfile=data.dmp

四、导入oracle dmp文件

1、创建权限目录

用sysdba登陆,
create directory 授权目录名 as '授权目录';   
grant read,write on directory 授权目录名 to 数据库用户名;

# 切换oracle用户:
su - oracle
# 管理员登录
sqlplus sys/system@orcl as sysdba

create directory ormimp as '/home/ormimp';   
grant read,write on directory ormimp to ORM;

2、导入oracle dmp文件

在cmd、用户窗口执行


impdp 数据库用户名/数据库密码 directory=授权目录名 remap_tablespace=导出数据库的表空间:表空间 dumpfile=数据文件名称.dmp remap_schema=导出数据库的用户名:数据库用户名 transform=OID:N

impdp ORM/ORM@orcl directory=impdata remap_tablespace=BLUESYS20240715:ORM dumpfile=BLUESYS.DMP remap_schema=BLUESYS:ORM transform=OID:N


 

标签:sysdba,数据库,ORM,oracle,导入,directory,Oracle,Docker,create
From: https://blog.csdn.net/HAN_789/article/details/142985891

相关文章

  • Docker资源控制
    一、CPU资源控制1、cgroups概述是一个非常强大的linux内核工具,他不仅可以限制被namespace隔离起来的资源,还可以为资源设置权重、计算使用量、操控进程启停等等,所以cgroups(Controlgroups)实现了对资源的配额和度量2、cgroups的四大功能(1)资源限制:可以对任务使用的资源总额进......
  • MySQL数据的导入
    我们在帖子MySQL数据的导出-brucexia-博客园(cnblogs.com)中讲了MySQL数据的导出,本文讲讲解MySQL数据的导入。MySQL数据的导入包括使用LOADDATAINFILE命令导入和使用mysqlimport命令导入。使用LOADDATAINFILE方式导入文本文件MySQL允许将数据导出到外部文件,也可以从外......
  • 【Docker】Harbor 私有仓库和管理
    目录一、搭建本地私有仓库二、harbor简介(特性、构成、架构的数据流向)2.1 什么是Harbor2.2 Harbor的特性2.3 Harbor的构成2.4Harbor的工作原理(运行流程) 三、harbor部署以及配置文件1.部署Docker-Compose服务2.部署Harbor服务 3.启动Harbor4.查看Harb......
  • Docker
    什么是DockerDocker是一个开源的容器化平台,允许开发者将应用程序及其依赖项打包到一个轻量级的、独立的容器中,并可以在任何环境中运行。容器通过共享主机操作系统的内核,具有更高的性能和效率,与虚拟机相比,消耗更少的资源。Docker提供了一种标准化的方式来构建、运行和管理应用程......
  • [20241016]Oracle C functions annotations补充.txt
    [20241016]OracleCfunctionsannotations补充.txt--//网站orafun.info可以查询oraclecfunctions.CreatedbyFritsHooglandwithalittlehelpfromKamilStawiarski.--//可以通过它了解oracle内部C函数.实际上可以直接下载相关文件,在本地使用.https://gitlab.com/Frits......
  • [数据集成/数据同步] 基于数据库增量日志的数据同步方案 : Flink CDC/Debezium/DataX/
    1概述简述:CDC/增量数据同步CDC的全称是ChangeDataCapture(增量数据捕获)在广义的概念上,只要能捕获数据变更的技术,我们都可以称为CDC。我们目前通常描述的CDC技术主要面向数据库的变更,是一种用于捕获数据库中数据变更的技术。CDC的技术实现方案基于查询......
  • 【DBA Part03】国产Linux上Oracle RAC安装-升级-ADG-迁移
    本阶段内容如下:01.国产统信UOS-Oracle19c安装配置02.国产龙蜥AnolisOS-Oracle19cRAC集群安装配置03.Linux-Oracle11gR2数据库升级到Oracle19C04.Linux-Oracle11gR2RAC数据库升级到Oracle19cRAC05.Linux-Oracle19cADG容灾配置(1+1+1级联)06.OracleXTTS跨平台数据库迁移0......
  • 【DBA Part01】国产Linux上安装Oracle进行数据迁移
    内容如下:1.1.生产环境RHEL/OELLinux8+Oracle11gR2安装配置1.2.国产麒麟操作系统+Oracle11gR2安装配置1.3.国产麒麟操作系统+Oracle11gR2RAC集群安装配置1.4.Oracle11gR2迁移到国产麒麟操作系统(单机/RAC)本阶段课程项目需求说明:某单位原有两套核心业务fgeduwx:itpux-com,运......
  • 实战!oracle 19c一键安装脚本分享
    #!/bin/bash#一键安装oracle数据库#修改主机名hostnamectlset-hostnamemyoracle#添加主机名与IP对应记录public_ip=$(hostname-I|grep-o-e'[0-9]\{1,3\}.[0-9]\{1,3\}.[0-9]\{1,3\}.[0-9]\{1,3\}'|head-n1)node_name=$(hostname)echo-e"${public_ip}${no......
  • Docker入门实践(六)
    环境VMwareWorkstationProubuntu-23.04构建镜像了解镜像层实现原理完成下载的层被提取到主机系统特定的目录。当你从镜像启动一个容器,会按特定顺序将所有层堆叠起来组成一个统一的文件系统。当容器启动,使用chroot设置容器的根目录为这个统一文件系统的路径。当统一文......