Oracle导出导入

将A库表空间x导入到B库的表空间y,以下内容为个人归纳,如有不对的地方,请在评论区留下您的见解

1. 了解oracle的逻辑结构

2. oracle系统表表名常见标记:

           dba_:全库的

           all_:当前用户可见的

           user_:当前用户所有的(隶属于当前用户的)

           _privs:xx的权限

_tables:xx下的表

sys_:系统的

role:角色

3. 常用查询:

1).查询当前用户所在的表空间

select username,default_tablespace from dba_users  where username='用户名';
2).查看当前用户的表空间的权限:

select * from session_privs;

3). 查看当前用户的所有表

select * from user_tables;
4).查看当前用户的系统权限和表级权限

select * from user_sys_privs; 
select * from user_tab_privs;
4.导入 导出的常用命令

导出:

exp 用户名/密码@数据库 file=d:\文件位置\back.dmp full=y ignore=y

导入:

imp 用户名/密码@数据库 file=d:\文件位置\back.dmp

5.导入时碰到的错误

           ORA-00959: 表空间 'XXXXXXXXXXX' 不存在。

           原因:这些表中含有clob或blob类型的字段 。 解决方案1:创建‘XXXXXXXXX’的同名表空间。解决方案2:将丢失的表手动导入

6.tnsnames相关问题

         tnsnames.ora 用在oracle client端,用户配置连接数据库的别名参数,用于记录客户端访问数据库的本地配置,其实就是定义网络服务.
         测试数据库服务的命令:
         例:tnsping 192.168.1.123:1521/orcl

对应:tnsping命令 IP地址   端口号 数据库服务名称   

如果能够ping通,则说明客户端能解析listener的机器名,而且lister也已经启动,但是并不能说明数据库已经打开,而且tsnping的过程与真正客户端连接的过程也不一致。但是如果不能用tnsping通,则肯定连接不到数据库。

         tnsnames.ora文件位置:\oracle\user\product\11.1.0\db_1\NETWORK\ADMIN\tnsnames.ora

7.其他

        查看表结构:desc表名(命令)

猜你喜欢

转载自blog.csdn.net/qq_27985509/article/details/78875508