解决方法:
http://blog.csdn.net/yuzmoon/article/details/6616613
在导入数据的时候出现这个错误
产生原因:指定的tablespace空间已经被占用满,无法扩展。
解决方法:使用“ALTER TABLESPACE ADD DATAFILE”命令增加文件系统文件和原始分区,或者增加INITIAL的大小(如:alter tablespace CDRS101 default storage(next 500M pctincrease 1))应该能够解决,否则就是有人使用你的表空间上创建了一个比较大的数据文件导致你的表空间不够用。我没有使用这种方法解决
我为了保证数据的一致性,进行的操作是:先把该表空间删除,然后重新创建一个大点的表空间。然后再次导入数据。(目的:清空该表空间中的数据,保持表空间中的数据正确。)
删除表空间中出现了问题
SQL->drop tablespace XXX including CONTENTS and datafiles; 删除执行的表空间
执行该语句时 出现ora-00054:resource busy and acquire with nowait specified这样的错误
原因:有事务正在执行(或者事务已经被锁),所有导致执行不成功。
解决办法:
1、用dba权限的用户查看数据库都有哪些锁
SQL->select object_name,machine,s.sid,s.serial# from v$locked_object l,dba_objects o ,v$session s where l.object_id = o.object_id
and l.session_id=s.sid;
如:testuser 24 111 2009-3-5 17:40:05
知道被锁的用户testuser,sid为24,serial#为111
2、kill该事务
SQL->alter system kill session '24,111'; (其中24,111分别是上面查询出的sid,serial#)
如果该语句没有执行成功,按照下面的操作进行处理
3、如果利用上面的命令杀死一个进程后,进程状态被置为"killed",但是锁定的资源很长时间没有被释放,那么可以在os一级再杀死相应的进程(线程),首先执行下面的语句获得进程(线程)号:
select spid, osuser, s.program from v$session s,v$process p where s.paddr=p.addr and s.sid=24
4、在OS上杀死这个进程(线程):
在unix上,用root身份执行命令:
#kill -9 12345(即第3步查询出的spid)
在windows(unix也适用)用orakill杀死线程,orakill是oracle提供的一个可执行命令,语法为:
orakill sid thread
其中:
sid:表示要杀死的进程属于的实例名
thread:是要杀掉的线程号,即第3步查询出的spid。
例:c:>orakill orcl 12345
(注:在windows下的这种操作我没有试过。我用的是Linux)
到此,完全解决。
删除分区这里需要注意:
1.分区索引就是在所有每个区上单独创建索引,它能自动维护,在drop或truncate某个分区时不影响该索引的其他分区索引的使用,也就是索引不会失效,维护起来比较方便,但是在查询性能稍微有点影响。
2.全局索引就是在全表上创建索引,它可以创建自己的分区,可以和分区表的分区不一样,也就是它是独立的索引。
在drop或truncate某个分区时需要创建索引alter index idx_xx rebuild,也可以通过alter table table_name drop partition partition_name update global indexes;实现,但是如果数据量很大则要花很长时间在重建索引上。
3.oracle会对主键自动创建全局索引
这两种删除分区分别为
alter talbe scdw.dw_busi_user_t_test truncate partition PART01
alter talbe scdw.dw_busi_user_t_test truncate partition PART01 update global indexes
原因是truncate 一个分区,则local index会自动维护,但全局index会变成unusable,所以要truncate要带上update global indexes.
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/22569416/viewspace-1966612/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/22569416/viewspace-1966612/