数据库备份问题

[复制链接]
查看11 | 回复9 | 2005-2-28 12:57:00 | 显示全部楼层 |阅读模式
我使用EXP备份数据库已经连续三天碰到这个问题了:
EXP-00008: ORACLE error 1555 encountered
ORA-01555: snapshot too old: rollback segment number 6 with name "R07" too small
EXP-00000: Export terminated unsuccessfully
可能是回滚段被数据库其他事务公用所至,但是由于某中原因我又不能给回滚段增加空间。请问:
1、如何给备份指定专用的回滚段?
2、因为数据量极大,结果可能是十来个2G大小的文件,如何时让EXP备份完一个文件(如file1.dmp)之后,自动进行下一个文件(如file2.dmp……)的备份?
3、或者大家有什么更好的方法备份大型数据库(使用EXP)?
回复

使用道具 举报

千问 | 2005-2-28 12:57:00 | 显示全部楼层
exp时,使用一个FILESIZE参数,可以规定dmp文件的大小。
回复

使用道具 举报

千问 | 2005-2-28 12:57:00 | 显示全部楼层
因为备份的数据要转储到磁带,所以如你所说,是使用file参数来定义DMP文件大小,并且我定义它的大小为2G。但是EXP在每备份完一个2G的DMP文件后,会提示输入下一个DMP文件的文件名字,然后才会继续备份。这样就需要有人时时的在旁边照应着,很麻烦,请问有什么方法可以解决吗?
另外。因为数据库在备份的时候是允许其他事务的,所以在备份比较大的数据表时,如果刚好碰上某个大事务也使用相同的回滚段,则数据库备份就会因为回滚段的不足而失败。我已经连续遭遇三次了,很头疼。希望各位高手能给小弟指点指点。
回复

使用道具 举报

千问 | 2005-2-28 12:57:00 | 显示全部楼层
很急的。先谢谢啦!
回复

使用道具 举报

千问 | 2005-2-28 12:57:00 | 显示全部楼层
UP
回复

使用道具 举报

千问 | 2005-2-28 12:57:00 | 显示全部楼层
我到了几天都imp不进去,后来可以了。
exp的时候,不要写全部的语句,就按系统的提示一步一步往下。后来就可以imp进去了。
我想你是不是可以试试?
回复

使用道具 举报

千问 | 2005-2-28 12:57:00 | 显示全部楼层
exp user/user filesize=1000m file=c:\user.dmp
看到你在福州,我才……
呵呵……
回复

使用道具 举报

千问 | 2005-2-28 12:57:00 | 显示全部楼层
我的备份是这样的:
exp USERID=username/passwd@dbname FILE=/db_bak/dbbak01.dmp FULL=yes COMPRESS=yes BUFFER=4096000 FILESIZE=2000000000LOG=/db_bak/dbbak.log

1、当使用export备份数据库时,如果出现ORA-01555,可以查出是哪个事务与哪个大型查询SQL冲突吗?

2、export的机制如何?是一个事务吗,如果是,它有几个“commit”提交动作?
回复

使用道具 举报

千问 | 2005-2-28 12:57:00 | 显示全部楼层
数据量这么大,考虑了增量备份了吗?
回复

使用道具 举报

千问 | 2005-2-28 12:57:00 | 显示全部楼层
去掉compress=y
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行