热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

oracle数据库表空间及权限调整示例

一、情况说明1.背景情况1).用户采用DBA权限,DBA权限具有访问数据库所有用户数据的权限,不安全。2).表空间与用户没有对应关系,无法直接标识用户与表空间(根

一、情况说明1.背景情况1).用户采用DBA权限,DBA权限具有访问数据库所有用户数据的权限,不安全。2).表空间与用户没有对应关系,无法直接标识用户与表空间(根

一、情况说明1.背景情况

1).用户采用DBA权限,DBA权限具有访问数据库所有用户数据的权限,,不安全。
2).表空间与用户没有对应关系,无法直接标识用户与表空间(根据自己情况)。
3).迁移涉及到表、索引、LOB对象的迁移。
注:如果涉及到LONGRAW字段类型表,还需要先建LONGRAW字段转成LOB对象。

本文只是找了情景环境,做一个记录过程,相对于操作系统中文件,文件夹的数据库的移动,数据库中也就是数据库对象进行的一些操作与管理。

本文出自:

2.具体任务

1.将gsjsso用户下的表全部移动到一个新建的表空间gsjsso。

2.将gsjsso用户从DBA权限降权为普通用户。

image

image

二、迁移过程如下1.创建GSJSSO表空间,并将gsjsso用户缺省表空间改为GSJSSO表空间。

image

2.构建迁移表SQL语句select 'alter table '||ds.owner||'.'||ds.segment_name||' move tablespace GSJSSO;' from dba_segments ds where ds.tablespace_name in('JTTSSO') and ds.owner = 'GSJSSO' and ds.segment_type = 'TABLE';

232104728.jpg

3.构建迁移索引SQL语句select 'alter INDEX '||ds.owner||'.'||ds.segment_name||' rebuild tablespace GSJSSO;' from dba_segments ds where ds.tablespace_name in('JTTSSO') and ds.owner = 'GSJSSO' and ds.segment_type = 'INDEX';

image

4.构建迁移LOB大对象SQL语句过程

1)查看GSJSSO用户在JTTSSO空间中的LOB对象,说明:LOB是造成不能成功通过导入来改变空间原因。只能采用如下方式。

col TABLESPACE_NAME for a20; col DS.OWNER||'.'||DS.SEGMENT_NAME for a40; col DATA_TYPE for a15; select ds.tablespace_name,ds.owner||'.'||ds.segment_name,ds.segment_type, dtc.DATA_TYPE,dtc.COLUMN_NAME from dba_tab_columns dtc , dba_segments ds where dtc.TABLE_NAME = ds.segment_name and dtc.OWNER = ds.owner and ds.tablespace_name in ('JTTSSO') and DATA_TYPE like '%LOB';

image

2)构建迁移LOB大对象SQL语句

select 'alter table '||dtc.owner||'.'||dtc.TABLE_NAME||' move lob('||dtc.COLUMN_NAME||') store as(tablespace '||du.default_tablespace||');' from dba_tab_columns dtc,dba_users du where dtc.OWNER = du.username and dtc.OWNER in('GSJSSO') and dtc.DATA_TYPE like '%LOB';

image

5.执行构建SQL语句迁移表,索引,LOB对象等数据

1)复制迁移表SQL语句在SQLPLUS中执行。

alter table GSJSSO.ED_SEND_CONFIG move tablespace GSJSSO; alter table GSJSSO.ED_SEND_CONFIG_HOST move tablespace GSJSSO; alter table GSJSSO.ED_SEND_CONFIG_LOG move tablespace GSJSSO; alter table GSJSSO.ED_SEND_CONFIG_ORG move tablespace GSJSSO; alter table GSJSSO.ED_SEND_CONFIG_USER move tablespace GSJSSO; alter table GSJSSO.IDM_ROLE_MENU_ITEM move tablespace GSJSSO; alter table GSJSSO.IDM_SYS_ADMIN_ROLE move tablespace GSJSSO; alter table GSJSSO.IDM_SYS_ADMIN_USER move tablespace GSJSSO; alter table GSJSSO.IDM_SYS_CONFIG move tablespace GSJSSO; alter table GSJSSO.IDM_SYS_LOG move tablespace GSJSSO; alter table GSJSSO.IDM_SYS_MENU move tablespace GSJSSO; alter table GSJSSO.IDM_USER_ROLE move tablespace GSJSSO; alter table GSJSSO.NET_PLATFORM_ORGANIZE_T move tablespace GSJSSO; alter table GSJSSO.NET_PLATFORM_USER_T move tablespace GSJSSO; alter table GSJSSO.PORTAL_ADAPTER move tablespace GSJSSO; alter table GSJSSO.PORTAL_ADAPTER_RESOURCE move tablespace GSJSSO; alter table GSJSSO.PORTAL_ADAPTER_RESOURCE_PRAM move tablespace GSJSSO; alter table GSJSSO.PORTAL_SYS_ADMIN_USER move tablespace GSJSSO; alter table GSJSSO.PORTAL_SYS_CONSTANTS move tablespace GSJSSO; alter table GSJSSO.PORTAL_TEMPLATE_STYLE move tablespace GSJSSO; alter table GSJSSO.PORTAL_TEMPLATE_USER move tablespace GSJSSO; alter table GSJSSO.PORTAL_TEMPLATE_ZIP move tablespace GSJSSO; alter table GSJSSO.PORTAL_USER_HEAD_PICTURE move tablespace GSJSSO; alter table GSJSSO.PORTAL_USER_LOGIN move tablespace GSJSSO; alter table GSJSSO.SSO_HOST move tablespace GSJSSO; alter table GSJSSO.SSO_HOST_CONFIG move tablespace GSJSSO; alter table GSJSSO.SSO_ORG move tablespace GSJSSO; alter table GSJSSO.SSO_SESSION move tablespace GSJSSO; alter table GSJSSO.SSO_USER move tablespace GSJSSO; alter table GSJSSO.SYS_ADMIN_USER move tablespace GSJSSO; alter table GSJSSO.SYS_CONFIG move tablespace GSJSSO;

2)复制迁移索引SQL语句在SQLPLUS中执行。

alter INDEX GSJSSO.PK_ED_SEND_CONFIG rebuild tablespace GSJSSO; alter INDEX GSJSSO.PK_ED_SEND_CONFIG_HOST rebuild tablespace GSJSSO; alter INDEX GSJSSO.PK_ED_SEND_CONFIG_LOG rebuild tablespace GSJSSO; alter INDEX GSJSSO.PK_ED_SEND_CONFIG_ORG rebuild tablespace GSJSSO; alter INDEX GSJSSO.PK_ED_SEND_CONFIG_USER rebuild tablespace GSJSSO; alter INDEX GSJSSO.ROLE_MENU rebuild tablespace GSJSSO; alter INDEX GSJSSO.ID_PK rebuild tablespace GSJSSO; alter INDEX GSJSSO.PK_IDM_SYS_ADMIN_USER rebuild tablespace GSJSSO; alter INDEX GSJSSO.MENUID_PK rebuild tablespace GSJSSO; alter INDEX GSJSSO.USER_ROLE rebuild tablespace GSJSSO; alter INDEX GSJSSO.SYS_C005154 rebuild tablespace GSJSSO; alter INDEX GSJSSO.SYS_C005157 rebuild tablespace GSJSSO; alter INDEX GSJSSO.SYS_C005159 rebuild tablespace GSJSSO; alter INDEX GSJSSO.SYS_C005161 rebuild tablespace GSJSSO; alter INDEX GSJSSO.SYS_C005163 rebuild tablespace GSJSSO; alter INDEX GSJSSO.PK_PORTAL_SYS_ADMIN_USER rebuild tablespace GSJSSO; alter INDEX GSJSSO.PK_PORTAL_SYS_CONSTANTS rebuild tablespace GSJSSO; alter INDEX GSJSSO.PK_PORTAL_TEMPLATE_STYLE rebuild tablespace GSJSSO; alter INDEX GSJSSO.PK_PORTAL_TEMPLATE_USER rebuild tablespace GSJSSO; alter INDEX GSJSSO.SYS_C005173 rebuild tablespace GSJSSO; alter INDEX GSJSSO.PK_PORTAL_USER_LOGIN rebuild tablespace GSJSSO; alter INDEX GSJSSO.SYS_C005181 rebuild tablespace GSJSSO; alter INDEX GSJSSO.SYS_C005189 rebuild tablespace GSJSSO; alter INDEX GSJSSO.SYS_C005193 rebuild tablespace GSJSSO; alter INDEX GSJSSO.PK rebuild tablespace GSJSSO; alter INDEX GSJSSO.PK_U rebuild tablespace GSJSSO; alter INDEX GSJSSO.PK_SYS_ADMIN_USER rebuild tablespace GSJSSO;
推荐阅读
author-avatar
Coco李可儿
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有