天天看点

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

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;