删除表空间 数据库备份 创建用户

本文介绍Oracle数据库中关于表空间管理、备份恢复、用户创建及权限分配的方法。包括彻底删除表空间下所有表的两种方式、简单的远程逻辑备份、创建用户并授予不同权限的过程,以及解决用户间表访问权限问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.彻底删除某个表空间下面的所有表 

方法1:

SELECT 'DROP TABLE '||TABLE_NAME||';'||'purge'  FROM user_tables WHERE TABLESPACE_NAME='TESTTBS';

得到的drop

select original_name,dropscn from recyclebin;--查看回收站里面的表

purge recyclebin;--清空回收站

flashback table tablename to before drop;--将表状态变成drop前

drop table tablename purge;--侧地删除某个表

select*from user_tables where tablespace_name='ETRTBS'--查看etrtbs表空间下的所有表

方法2:


drop tablespace tablespacename including contents and datafiles cascade constraints;--删除表空间  然后手动删除数据文件

create tablespace tablespacename datafile ' E:\oracle\product\10.2.0\oradata\ibn\ABSTBS.dbf' size 4096m autoextend on next 1024m;--创建表空间,指定数据文件

select tablespace_name,sum(bytes)/1024/1024 from dba_data_files  group by tablespace_name;--查看表空间的数据文件大小

select tablespace_name,sum(bytes)/1024/1024 from dba_free_spacegroup by tablespace_name;--查看表空间空闲的数据文件大小

2.简单的ORACLE备份

远程逻辑备份数据库

exp userid='sys/oracle141242@ibn  as sysdba' file=d:\fbackup.dmp log=dible  full=y
--将数据库完全导出,在导入的时候可以通过设置formuser来恢复需要的数据(语句结尾不能加符号)

exp abs/abs@abshrp file=e:\backup\abs.dmp  owner=abs

--将数据库中abs用户下的所有对象导出

Imp abs/abs@ibn  file= e:\backup\backup.dmp fromuser=abs touser=abs

--将数据从datafile某个用户中导入到本地数据库中某个用户下

Imp etr/abs@ibn  file= E:\backup\backup.dmp tables=(表名1,表名2,表名3...)

--将备份文件中某些指定的表导入到本地库对应的用户下面

3.创建用户

create user abs  --创建用户名

  identified by "abs"--密码

  default tablespace ABSTBS --默认表空间

  temporary tablespace TEMP --临时表空间

  profile DEFAULT;

grant connect to abs;-- 授予创建的用户权限

grant dba to abs;--授予dba权限

grant resource to abs; --授予用户创建各种资源的权限,建表,存储过程等

grant unlimited tablespace to abs;--可以在其他表空间随意建表

 oracle用户等价于模式,所以删除用户后,所有的对象,包括表、视图、存储过程等等等会全部被删除

4.某个用户查看别的用户下面表没有权限问题

执行存储过程时,本用户查看别的用户下面的表一般会提示表或视图不存在.

得用如下方法授予权限

grant select, insert, update, delete on ETR_BRANCH to ABS;--授权ABS用户有增删改查ETR_BRANCH表的权限
grant select on ETR_BRANCH to PUBLIC;--授权所有用户有查看ETR_BRANCH表的权限

 

GRANT delete ANY TABLE TO 存储过程所在用户  WITH ADMIN OPTION;

GRANT insert ANY TABLE TO 存储过程所在用户  WITH ADMIN OPTION;

GRANT select ANY TABLE TO 存储过程所在用户  WITH ADMIN OPTION;

转载于:https://www.cnblogs.com/javahuang/archive/2013/01/06/2847573.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值