![我的 oracle 数据库的 rdbms 文件夹中有什么?](https://linux22.com/image/527924/%E6%88%91%E7%9A%84%20oracle%20%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9A%84%20rdbms%20%E6%96%87%E4%BB%B6%E5%A4%B9%E4%B8%AD%E6%9C%89%E4%BB%80%E4%B9%88%EF%BC%9F.png)
我这里有一个应该很小的数据库。应该有大约 350,000 行纯文本数据,但 rdbms 文件夹大约有 50 GB。对我来说似乎太大了。
我在 rdbms 文件夹中发现几个文件夹(大约 60 Mb)和 17,000 个文件,从 ARC00311.001 开始直到 ARC43183.001。这些文件每小时生成一次,最早可追溯到 2006 年。
它们是某种日志文件吗?关于备份,我应该/必须备份它们吗?我可以删除它们吗?这样做有什么缺点?
谢谢
答案1
看起来这些是重做日志的存档版本。
当您还原数据库并想要恢复用于恢复的备份之后所做的更改时,将使用存档日志。
(以下命令适用于 Oracle 10g 和 11g。自 9i 以来它们可能已发生变化)
如果您使用 RMAN 备份数据库,则可以使用以下命令包含存档日志:
RMAN> backup database plus archivelog;
您还可以通过添加“删除所有输入”语句来删除备份中包含的存档日志:
RMAN> backup database plus archivelog delete all input;
考虑到文件数量,我建议您先恢复数据库,执行完整备份,删除旧的存档日志并清除存档日志列表。您可以使用以下命令从 RMAN 提示符中清除存档日志列表:
RMAN> crosscheck archivelog all;
您还应该使用以下命令更改存储存档日志的文件夹:
SQL> ALTER SYSTEM set log_archive_dest_1="LOCATION=x:\Whatever\The\Path" scope=spfile;
SQL> shutdown immediate;
SQL> startup;
SQL> alter system switch logfile;