前言

开发环境之前多个用户共用一个表空间,后期维护比较麻烦,因此需要将这些用户拆出来,一个用户一个表空间,以后清理这些用户也更方便。

大致思路:假设A、B、C用户共用一个表空间,将A、B、C的用户数据使用expdp或其他工具备份出来,分别创建一个新的用户和表空间,将数据使用impdp还原到新用户。基本等于复制了一个新用户。

  • 数据库版本:oracle 19c

步骤

  1. 备份旧用户数据。账户信息:ZHANGSAN/ZHANGSAN@192.168.0.10:1521/orcl。备份到DATA_PUMP_DIR目录,这个是Oracle安装好之后就有的目录。指定备份文件和备份日志。
expdp ZHANGSAN/ZHANGSAN@192.168.0.10:1521/orcl \
directory=DATA_PUMP_DIR dumpfile=ZHANGSAN_20220610_expdp.dmp \
logfile=ZHANGSAN_20220610_expdp.log
  1. 新建表空间。起始256MB,每次能扩增256MB,最大2048MB。
create tablespace TS_ZHANGSAN0610 logging datafile 'TS_ZHANGSAN0610.dbf' size 256m autoextend on next 256m maxsize 2048m extent management local;
  1. 创建新用户并授权
create user ZHANGSAN0610 identified by ZHANGSAN0610 default tablespace TS_ZHANGSAN0610;

grant alter session, create any synonym, create any trigger, create job, create materialized view, create procedure, create public synonym, create view, create table to ZHANGSAN0610;

grant connect, create sequence, unlimited tablespace to ZHANGSAN0610;

grant read, write on directory DATA_PUMP_DIR to ZHANGSAN0610;

grant connect, resource, dba to ZHANGSAN0610;
  1. 还原数据。使用新用户导入数据,使用remap_schema将旧帐户数据映射到新账户的schema,使用remap_tablespace将旧帐户的表空间映射到新账户的表空间。
impdp ZHANGSAN0610/ZHANGSAN0610@192.168.90.213:1521/orcl \
directory=DATA_PUMP_DIR dumpfile=ZHANGSAN_20220610_expdp.dmp \
logfile=ZHANGSAN0610_20220610_impdp.log \
remap_schema=ZHANGSAN:ZHANGSAN0610 \
remap_tablespace=TS_PUBLIC:TS_ZHANGSAN0610 transform=OID:N
  1. 导入完成后,使用客户端工具自验证新用户数据导入是否正常,正常的话交给相关人员将后端程序切换到新库进行验证。

[oracle]拆分多用户的公共表空间的更多相关文章

  1. 转 Oracle Transportable TableSpace(TTS) 传输表空间 说明

    ############1   迁移数据库的集中方法 三.相关技术 迁移方式 优势 不足1 Export and import • 对数据库版本,以及系统平台没有要求 • 不支持并发,速度慢• 停机时 ...

  2. 【转】Oracle - 数据库的实例、表空间、用户、表之间关系

    [转]Oracle - 数据库的实例.表空间.用户.表之间关系 完整的Oracle数据库通常由两部分组成:Oracle数据库和数据库实例. 1) 数据库是一系列物理文件的集合(数据文件,控制文件,联机 ...

  3. oracle 查询表的大小,表空间的使用情况,默认表空间

    oracle 查询表的大小,表空间的使用情况,默认表空间 oracle 查询表的大小,表空间的使用情况,默认表空间 --查看某张表占用磁盘空间大小 ( 表名大写 ) Select Segment_Na ...

  4. --使用oracle数据先要创建表空间

    one\--创建表空间 CREATE TABLESPACE 表空间的名字DATAFILE 'E:\oracle\app\userdata\java5space.dbf' --表空间物理文件路径SIZE ...

  5. oracle入坑日记<四>表空间

    1   表空间是什么 1.1.数据表看做的货品,表空间就是存放货品的仓库.SQLserver 用户可以把表空间看做 SQLserver 中的数据库. 1.2.引用[日记二]的总结来解释表空间. 一个数 ...

  6. Oracle基础(三) 表空间

    数据库的存储结构 数据库主要用于存储和检索相关的信息,Oracle数据库包含逻辑结构和物理结构. 物理结构是指现实存储单元,由一组文件组成如数据文件.日志文件.控制文件. 数据文件:用于存储数据的文件 ...

  7. Oracle 数据库、实例、表空间、用户、数据库对象

    Oracle是一种数据库管理系统,是一种关系型的数据库管理系统.通常情况了我们称的“数据库”,包含了物理数据.数据库管理系统.内存.操作系统进程的组合体,就是指这里所说的数据库管理系统. 完整的Ora ...

  8. oracle删除非空的表空间

    oracle删除非空的表空间: drop tablespace tablespaceName including contents;

  9. oracle expdp/impdp/可传输表空间

    oracle expdp/impdp/可传输表空间/及一些参数 Oracle data pump 导出操作能够将表.索引.约束.权限.PLSQL包.同义词等对象从数据库导出,并将它们保存在一种非文本格 ...

  10. Oracle架构设计01:表空间的管理维护规范

    Oracle数据库的表空间管理可以说是非常简单和基础的一项维护工作,但是越简单的事情就越要制定统一的规范,这样数据库的各项管理工作才会愈加的简单高效. 那么接下来,问题来了.. Q1:当我们接手一个新 ...

随机推荐

  1. 收藏!最全Linux思维导图

    收藏!最全Linux思维导图 目录 收藏!最全Linux思维导图 1. 认识 Linux 2. Linux 命令 3. Linux学习路径 4. Linux 桌面介绍 5. FHS:文件系统目录标准 ...

  2. 2022-01-01:给定int[][] meetings,比如 { {66, 70} 0号会议截止时间66,获得收益70 {25, 90} 1号会议截止时间25,获得收益90

    2022-01-01:给定int[][] meetings,比如 { {66, 70} 0号会议截止时间66,获得收益70 {25, 90} 1号会议截止时间25,获得收益90 {50, 30} 2号 ...

  3. 2021-08-04:给定一个字符串str,当然可以生成很多子序列。返回有多少个子序列是回文子序列,空序列不算回文。比如,str = “aba”,回文子序列:{a}、{a}、 {a,a}、 {b}、{

    2021-08-04:给定一个字符串str,当然可以生成很多子序列.返回有多少个子序列是回文子序列,空序列不算回文.比如,str = "aba",回文子序列:{a}.{a}. {a ...

  4. vue全家桶进阶之路34:Vue3 路由基本配置

    在Vue3中,路由的基本配置是通过使用Vue Router库来实现的.以下是Vue3中路由的基本配置步骤: 安装Vue Router 使用npm或yarn在项目中安装Vue Router: npm i ...

  5. 【Java】Java代码拷贝文件的速度

    Java代码拷贝文件的速度究竟有多快? 前言 最近学习Java到了流处理,其中有种流叫FileInputStream和FileOutputStream,简单来说,就是操作文件的,老师给我们示范了一个非 ...

  6. vue平铺日历组件之按住ctrl、shift键实现跨月、跨年多选日期的功能

    已经好久没有更新过博客了,大概有两三年了吧,因为换了工作,工作也比较忙,所以也就没有时间来写技术博客,期间也一直想写,但自己又比较懒,就给耽误了.今天这篇先续上,下一篇什么时候写,我也不知道,随心所欲 ...

  7. remote: HTTP Basic:Access denied fatal:Authentication failed for

    近来在一天新电脑上面使用git pull 一个项目,老是提示 Access denied, 找了许多方法,ssh key这些都配置了还是不行,当时别提有多尬 看嘛这就是pull 时的提示 // *** ...

  8. 有关ODOO的ORM操作

    1.查询操作 sale_id = self.env['sale.order'].search([]) env将对象实例化,search进行搜索,可以根据需求添加搜索条件 search_count([] ...

  9. 洛谷 P5540 [BalkanOI2011] timeismoney | 最小乘积生成树

    题意 给一个无向图,边有两个权 \(a\) 和 \(b\),定义一个生成树的权值是 \(\left(\sum\limits_{e\in T}a_e\right)\left(\sum\limits_{e ...

  10. The content of element type “web-app“ must match 解决方法

    报错原因 ‍ 问题描述 : 在创建 SpringMVC 时 , 选用 idea 的 webapp 模板来创建 , xml 配置文件中进行配置时发现提示警告 警告如下: ‍ ​ ​ 这错误大概的意思就是 ...