ORACLE迁移中的一些经验(三)批量导出index 建索引、用户、权限等语句
来源:互联网 发布:python数组转字符串 编辑:程序博客网 时间:2024/05/16 19:24
1、批量导出INDEXES语句
SELECT DBMS_METADATA.GET_DDL(u.OBJECT_TYPE, u.object_name,u.OWNER)
FROM DBA_OBJECTS u
where u.OBJECT_TYPE='INDEX' AND u.owner in('TONY');
导出语句时需要格式化,方便使用。
set linesize 180
set pages 999
set long 90000
--设置按单词换行
col a for a200 wrapped word
--去除storage等多余参数
EXECUTE DBMS_METADATA.SET_TRANSFORM_PARAM(DBMS_METADATA.SESSION_TRANSFORM,'STORAGE',FALSE);
--输出信息采用缩排或换行格式化
EXECUTE DBMS_METADATA.SET_TRANSFORM_PARAM(DBMS_METADATA.SESSION_TRANSFORM,'PRETTY',true);
--确保每个语句都带分号
EXECUTE DBMS_METADATA.SET_TRANSFORM_PARAM(DBMS_METADATA.SESSION_TRANSFORM,'SQLTERMINATOR',true);
2、-- 创建用户脚本
set serveroutput on
set line 100
set pagesize 0
declare
cursor c1 is select username from dba_users a where a.account_status='OPEN' ;
v_user c1%rowtype;
begin
open c1;
loop
fetch c1 into v_user ;
exit when c1%notfound;
DBMS_OUTPUT.put_line(to_char(dbms_metadata.get_ddl('USER',v_user.username))||';');
end loop;
close c1;
end;
/
3、---授权系统权限脚本
select 'grant '||t.privilege ||' to '||t.grantee || decode(t.admin_option,'YES',' with admin;',';')
from dba_sys_privs t
where t.grantee not in
('SPATIAL_WFS_ADMIN_USR',
'DIP'
);
4、--授角色脚本
select 'grant '||granted_role||' to '||grantee||';' from dba_role_privs
where grantee not in
('SPATIAL_WFS_ADMIN_USR',
'DIP',
'MDDATA'
);
5、-- 表权限
select 'grant '||t.privilege||' on '||t.grantor||'.'||t.table_name||' to '||t.grantee||decode(t.grantable,'YES',' with grant;',';')
from dba_tab_privs t
where t.grantor not in
('SYS','SYSTEM','DBSNMP','PERFSTAT','OUTLN','WMSYS','CONNECT','DBA',
'EXP_FULL_DATABASE','IMP_FULL_DATABASE','OEM_MONITOR','RESOURCE','JAVADEBUGPRIV')
order by t.grantee
/
- ORACLE迁移中的一些经验(三)批量导出index 建索引、用户、权限等语句
- ORACLE迁移中的一些经验(一)批量导出sequence
- ORACLE迁移中的一些经验(二)批量导出job,并在目标库创建
- 批量导出oracle中的资源(PACKAGE 、PACKAGE BODY)等
- Oracle迁移用户和权限
- ClearCase迁移中的一些经验
- ClearCase迁移中的一些经验
- Oracle迁移之批量迁移INDEX、SEQUENCE、VIEW
- Oracle index】SQL语句无法走索引的一些情况分析及语句改写思路
- Oracle建用户,建表空间,导入导出数据等语句
- Oracle - index (索引)
- oracle 进阶三(索引、权限,角色)
- Oracle迁移到PostgreSQL的一些经验
- ORACLE 创建用户,权限等
- oracle 索引(Bitmap Index)
- Oracle按用户批量重建索引
- 索引批量迁移
- 整理 SQL 数据库导出迁移用户账户及权限
- Java必须收藏的网站
- S集成静态库-iOS合并静态库
- JSR 303 - Bean Validation
- Service生命周期
- 着色器子程序示例
- ORACLE迁移中的一些经验(三)批量导出index 建索引、用户、权限等语句
- WWDC2014之iOS使用动态库
- 使用动态链接库的方式动态实现更新
- 在iOS中创建静态库
- ios 开发中 动态库 与静态库的区别
- 堆 和 栈的 区别(经典)
- 创建静态库第二种方法:在原有工程上操作,打开已存在的工程,然后添加一个要做成.a静态库的 Target 在此,简单命名为mylibrary
- Oracle数据库的批量操作,forall,BULK COLLECT
- 属性字符串