使用impdp复制oracle的schema数据迁移
测试环境:
源: windows 2003, oracle 10202
目标:windows 2000, oracle 10203
注:本文中所说的 schema 和 user 是一个意思。
impdp 的数据源既可以是expdp 导出来的DMP文件,也可以是一数据库,通过network_link 参数来指定数据源,schemas
参数说明要复制的用户,remap_schemas 参数说明源用户与目标用户的匹配关系,remap_tablepace 来调整原 schemas
使用的表空间与目标数据库用户要表空间的对应关系。这样,基本上可以把源schema的数据导入到目标数据库。格式如下:
2、impdp user/password parfile=parfile.log
**********parfile.log 的内容***************
network_link=目标数据库上的数据库链。
schema=源数据库上导出数据的用户。
remap_schema=源用户:目标用户。
remap_tablespace=源用户使用的表空间:目标用户将使用的表空间(包括临时表空间)。
**********parfile.log 的内容***************
过程举例:
1、在目标数据库上创建数据库链,指向源数据库,数据库链中连接的用户必须具备EXP_FULL_DATABASE
角色的权限。 例:
A、新建数据库链里的用户,授予create session 和使用users 空间的权限,
SQL> create user link identified by "1";
用户已创建。
SQL> grant create session to link;
授权成功。
SQL> ALTER USER LINK QUOTA UNLIMITED ON USERS;
用户已更改。
B、为该用户创建一表,用于测试复制用户过程。
SQL> CREATE TABLE LINK.DOC_TYPE AS SELECT * from INFO.DOC_TYPE;
表已创建。
SQL> SELECT TABLE_NAME from DBA_TABLES WHERE OWNER='LINK';
TABLE_NAME
------------------------------
相关文档:
1.USEREVN()
返回当前用户环境的信息,opt可以是:
ENTRYID,SESSIONID,TERMINAL,ISDBA,LABLE,LANGUAGE,CLIENT_INFO,LANG,VSIZE
1.ISDBA 查看当前用户是否是DBA如果是则返回true
SQL> select userenv('isdba') from dual;
USEREN
------
FALSE
2.SESSION 返回会话标志
SQL> select userenv('sessio ......
一个简单的oracle分页存储过程的实现和调用。在看了众多的分页存储过程以后发现都是针对sqlserver的,而没有oracle的,因此想写一个关于oracle的存储过程,因为我用到的数据库是oracle。
Oracle分页存储过程的思路于sqlserver的思路是一样的,但是我这里做了点改动,在因为Oracle的语法和规则的不同所以,Oracle分页存储 ......
本文只讨论Oracle中最常见的索引,即是B-tree索引。本文中涉及的数据库版本是Oracle8i。
一. 查看系统表中的用户索引
在Oracle中,SYSTEM表是安装数据库时自动建立的,它包含数据库的全部数据字典,存储过程、包、函数和触发器的定义以及系统回滚段。
一般来说,应该尽量避免在SYSTEM表中存储非SYSTEM用户的 ......
AU
ASM的最小分配单元,默认是1M,可以在创建diskgroup时指定。在diskgroup中的每个盘都被切分为很多个AU,可以是1, 2, 4, 8, 16, 32, or 64MB。
File Extent
由一个或多个AU组成,一个file extent总是在一块磁盘上(不跨磁盘分配AU),这里的file extent和数据库中的extent是不同的,我们可以这样理解,这里的file ex ......