数据中心清理vt临时表

解决方案:
【Oracle数据库】
1. 停止所有实例
管理控制台——群集控制器 界面,可以停止所有实例,或者在管理控制台——应用服务器 界面一个一个停止实例,直到所有实例停止。
2. 连接EAS数据库实例
例如,通过命令行sqlplus连接数据库:打开cmd命令窗口,输入sqlplus 用户名/密码@数据库实例名
或是通过PL/SQL developer软件连上Oracle数据库
3. 执行下面查询语句,先查出哪些表,看看这些表能不能删,如果查询出来的都是临时表,再执行上面的删除语句
(所谓的临时表,就是表名以VT开头,表名包含一大串数字和字母,类似这种表名VTOS8TE3N61US0XKTFY68GNT2)
select * from user_tables wheretablespace_name='原EAS数据表空间名(存有VT开头的临时表)' AND table_name LIKE 'VT%';
4.如果确认查询出的表都是临时表,则执行下面语句(表空间名换成现场的表空间)
spool d:\dop_temp_table.sql
select 'drop table eas用户名.'||table_name||' purge;' as"--drop temptable"
from user_tables
where tablespace_name='原EAS数据表空间名(存有VT开头的临时表)'
and table_name like 'VT%';
spool off
5.对在D盘生成的dop_table.sql文件进行编辑,去掉不必要的部分(原则上都要),只留下drop table … purge; 语句
6. 编辑完dop_table.sql后,执行该sql文件
@d:\dop_temp_table.sql
方法二:
Oracle环境可以使用下面的脚本直接操作:
declare
cursor c_droptemptable
is select table_name
from user_tables
WHERE table_name like 'VT%'
and user_tables.TABLESPACE_NAME='EAS_D_EAS75_STANDARD'
--EAS_D_EAS75_STANDAR
数据中心清理vt临时表
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。



