达梦数据库修改归档日志

磁盘空间有限的情况下,需要清理或转移归档日志,以满足存储要求,或当归档磁盘过满而导致归档无法正常写入,致使数据库无法提供正常使用。

1、限制归档空间

在设置归档路径时,限制单个日志的大小以及归档目录的大小,当日至存储到达上限(此处为10g)时,会自动清除最早日志。

sql>alter database mount;

sql>alter database add archivelog 'type=local,dest=/SJ/arch,file_size=128,space_limit=2048';

sql>alter database open;

或者修改dmarch.ini

[ARCHIVE_LOCAL1] ARCH_TYPE = LOCAL ARCH_DEST = /SJ/arch ARCH_FILE_SIZE = 128 ARCH_SPACE_LIMIT = 2048

2、修改归档路径

当归档磁盘被占用,满了,或者需要更大的新的存储空间,可以修改归档路径,修改归档空间限制。

修改归档空间限制

alter database mount;

alter database noarchivelog;

alter database modify archivelog 'type=local,dest=/SJ/arch ,file_size=128,space_limit=2048';

alter database archivelog;

alter database open;

select * from v$dm_arch_ini;

修改归档路径

alter database mount;

alter database noarchivelog;

ALTER DATABASE ADD ARCHIVELOG 'TYPE=LOCAL,DEST=/dmdbms/arch,FILE_SIZE=1024,SPACE_LIMIT=4096';

alter database delete archivelog 'type=local,dest=/SJ/arch,file_size=128,space_limit=2048';

alter database archivelog;

alter database open;

3、利用系统函数删除指定归档

SF_ARCHIVELOG_DELETE_BEFORE_TIME----删除指定时间之前的归档文件,该函数返回删除的归档日志文件个数。

如下命令为删除系统当前时间7天前的归档日志文件: SQL>select sf_archivelog_delete_before_time(sysdate - 7);

SF_ARCHIVELOG_DELETE_BEFORE_LSN----删除指定LSN之前的归档文件,该函数返回删除的归档日志文件个数。归档日志的有效LSN范围可以通过V$ARCH_FILE查看。

如下命令为删除LSN号为44455之前的归档日志信息。

SQL>select sf_archivelog_delete_before_lsn(44455);

4、备份归档时删除 归档日志支持联机备份(热备)和脱机备份(冷备),两者都提供备份后删除归档的功能,在备份时指定delete input参数即可备份后删除归档,联机归档备份命令参考如下: SQL>backup archivelog all delete input;

执行完成后,查询V$ARCH_FILE视图无数据,同时操作系统下归档日志文件也被删除。 

5、手动删除归档日志 在操作系统下手工删除归档目录下的归档文件,归档日志文件删除后不影响DM数据库的正常运行。

但无论采用哪种办法删除归档日志,都建议在删除前备份归档日志文件或备份数据库,以便数据库故障时能利用备份和归档日志恢复到最新状态。

更多资讯请上达梦技术社区了解: https://eco.dameng.com 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值