扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
回收表空间有以下几个方法:
创新互联公司是网站建设专家,致力于互联网品牌建设与网络营销,专业领域包括成都做网站、网站制作、电商网站制作开发、重庆小程序开发、微信营销、系统平台开发,与其他网站设计及系统开发公司不同,我们的整合解决方案结合了恒基网络品牌建设经验和互联网整合营销的理念,并将策略和执行紧密结合,且不断评估并优化我们的方案,为客户提供全方位的互联网品牌整合方案!
1. drop and recreate
2.truncate and restore with backup
3. alter table move tablespace;alter index XXX rebuild ...
4. exp/imp
5 alter table XXX deallocate ...
回收某个表使用空间的步骤:
(1)、选择某个表空间中超过N个blocks的segments,通过此语句可以看出那个表占用的空间大。
select segment_name,segment_type,blocks from dba_segments
where tablespace_name='TABLESPACENAME'
and blocks N
order by blocks;
(2)、分析表,得知表的一些信息
analyze table TABLENAME estimate statistics; 执行完后再执行
select initial_extent,next_extent,min_extents,blocks,empty_blocks from dba_tables
where table_name='TEST' and wner='AA';
(3)、使用alter table ... deallocate unused 命令回收表的空间
例如: alter table AA.TEST deallocate unused keep 1k;
(4)、使用 alter tablespace TABLESPACENAME coalesce 命令回收表空间的空间。
(5)、可以使用dba_free_space视图查看表空间中的空闲空间信息。
要看你所说的回收用户是怎么回收。
(1)将用户锁起来。相当于回收,就算有密码也没办法应用。alter user *** account lock.
(2)回收用户的权限。把用户的连接权限等统统回收。这样的话使用revoke.
(3)删除用户,这个是drop,不过这个操作最好不要做,因为可能有很多关联问题产生。
(4)如果是针对某个人回收,用户,那只能是修改密码,然后不告诉他。或者限制主机登录,不过意义都不大。
查询sys用户直接赋予用户icdpub的权限:
select
*
from
dba_sys_privs
t
where
t.grantee='icdpub';查询用户通过role赋权所得到的权限:
select
*
from
dba_role_privs
t
where
t.grantee='icdpub';
收回用户的权限:revoke
create
table
from
icdpub;
收回用户的角色:revoke
icdpub_role
from
icdpub;
回收只用最后一个就行了
而且要用你的sysdba用户回收,而且你语法也错了
revoke dba from wiki
1.GRANT 赋于权限
常用的系统权限集合有以下三个:
CONNECT(基本的连接), RESOURCE(程序开发), DBA(数据库管理)
常用的数据对象权限有以下五个:
ALL ON 数据对象名, SELECT ON 数据对象名, UPDATE ON 数据对象名,
DELETE ON 数据对象名, INSERT ON 数据对象名, ALTER ON 数据对象名
GRANT CONNECT, RESOURCE TO 用户名;
GRANT SELECT ON 表名 TO 用户名;
GRANT SELECT, INSERT, DELETE ON表名 TO 用户名1, 用户名2;
2.REVOKE 回收权限
REVOKE CONNECT, RESOURCE FROM 用户名;
REVOKE SELECT ON 表名 FROM 用户名;
REVOKE SELECT, INSERT, DELETE ON 表名 FROM 用户名1, 用户名2;
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流