关于Oracle的使用

1、查看数据库

  在sqlplus / as sysdba执行后,再执行select name from v$database;

2、执行1后继续查看该数据库下的表

  select table_name from user_tables;

3、执行impdp导入dmp文件报错

  ora-39083:对象类型......创建失败,出现错误;

  ora-31625:必须有方案system才能导入此对象,但此方案不可访问

  ora-01031:权限不足

解决方法:

  权限不足,用DBA用户登录数据库,给导入库的用户a先授权:

  grant connect,resource to a;

  grant create session,dba to a;

  再执行一遍impdp导入语句。

4、oracle使用impdp导入dmp文件完整方法

  ①、创建表空间

    --临时表空间
    create temporary tablespace mytsp_temp
    tempfile 'D:\work\tablespace\mytsp_temp.dbf'
    size 50m
    autoextend on
    next 50m maxsize 20480m
    extent management local;

    --表空间
    create tablespace mytsp
    logging
    datafile 'D:\work\tablespace\mytsp.dbf'
    size 50m
    autoextend on
    next 50m maxsize 20480m
    extent management local;

  ②、在该空间下创建用户

    --创建用户
    create user cpoa identified by cpoa
    default tablespace mytsp
    temporary tablespace mytsp_temp;

  ③、为该用户授权

    --给用户授予权限
    grant connect,resource,dba to cpoa;

  ④、执行导入语句

    impdp 用户账号/用户密码 directory=dir dumpfile=dmp文件名称(必须在dir目录下) remap_schema=用户名a:用户名b;(从用户a导到用户b)

5、dir设置

  create directory dir as 'd:\dump'; //dir名称可以随便命名   需要手工创建d:\dump

  dir查询:select * from dba_directories;

  给用户a赋予在指定目录的操作权限,最好以system等管理员赋予:grant read,write on directory dir to a;

6、SYSDBA、Normal、SYSOPER三种登录方式的区别

 

normal 是普通用户,只有通过被sys授权之后才可以对数据库进行操作
sysdba拥有最高的系统权限
sysoper主要用来启动、关闭数据库,sysoper 登陆后用户是 public
sysdba登陆后是sys,而且只能是SYS登录sysdba.

7、执行SQL操作语句后需在后面加上COMMIT才能生效

  如DELETE FROM SYS_USER WHERE ID= 'xxx';COMMIT

8、

posted @ 2019-11-05 17:59  CodeCorner  阅读(1382)  评论(0)    收藏  举报