oracle杂项


1、查询当前用户或者数据库所有的表

-- 查看当前登录用户所有的表
select table_name from user_tables;
-- 根据用户名查询用户所拥有的表,如果不写条件则是查询当前数据库所有用户各自拥有的表
select * from all_tables where owner='INS';-- INS为用户名,用户名必须是大写,小写无法查询出结果来

2、查看oracle客户端版本参见博文:

  • 如何查看Oracle客户端版本_Allen Yu的博客-CSDN博客_查看oracle客户端版本
select * from v$version;

3、文件导入导出问题:导出dmp文件时,如果使用的是expdp命令导出文件,则应该使用impdp命令导入。如果使用的exp命令导出文件,则应该使用imp命令导入。导入用户不同问题处理参见博文:https://blog.csdn.net/hanchao5272/article/details/79818882

导入操作参见博文:

导入步骤:先创建表空间,然后创建用户,最后进行导入,在导入之前先修改dmp文件版本号,然后进行设置从用户导入到用户,最后执行。

oracle导出空表问题:oracle不支持空表导出,所以需要给表分配空间,可通过如下SQL进行修改,然后重新导出就可以了

alter table tablename allocate extent;

参见博文:

导出指定的表

exp username/password@ip:1521/orcl  file=E:\xxx.dmp tables=(tablename1,tablename2,tablename3);

导入其他相关问题参见如下博文:

  • https://blog.csdn.net/GRAY_KEY/article/details/81072345 (plsql导入.dmp详情)
  • https://blog.csdn.net/qq275394303/article/details/25181455 (ORACLE 数据备份、恢复以及导入时表空间不存在的解决方案)
  • https://blog.csdn.net/yudianxiaoxiao/article/details/78231143 (plsql导入.dmp步骤)
  • (oracle导入导出相关问题)

4、表空间创建及创建表空间问题参见博文:

  • https://blog.csdn.net/xiaonan153/article/details/87778390
create tablespace INS_DATA
datafile 'D:\oracle19c\oradata\insdata'  -- 表空间数据文件地址
size 1M autoextend on next 50M maxsize unlimited; -- autoextend 设置容量为自动增长,50M是自增的大小

create user INS -- 创建ins用户
identified by "123456" -- 用户密码
default tablespace INS_DATA -- 与表空间进行关联
profile DEFAULT
ACCOUNT UNLOCK;

oracle 表空间相关查询操作,参见博文:

5、oracle角色以及为角色授权参见博文:

  • https://blog.csdn.net/ly510587/article/details/95459299

查看当前登录用户的角色与权限参见博文: http://blog.itpub.net/29500582/viewspace-1314555/


参考博文:
(1)