查看Oracle数据库是否归档和修改归档模式

发表于:2016-4-22 09:58

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:xuejiaqiang88    来源:51Testing软件测试网采编

  Oracle分为非归档模式(NOARCHIVELOG) 和归档模式(ARCHIVELOG)。非归档模式不产生归档日志,虽然节省了硬盘空间,但是备份方案选择很有限,通常只能选择冷备份。还原也只能还原到备份那一时刻的数据,通常也仅在开发时使用(据说在数据仓库中也使用),Oracle安装默认就是非归档模式。在生产环境中我们应该使用归档模式,它会产生归档日志,可以使用多种备份和还原方案,对与Oracle管理员来说应该更改模式是必然的选择。
  首先查看数据库现有模式可使用以下语句
  select name,log_mode from v$database;
  也可以用下面的语句
  archive log list;(该方法需要as sysdba)
  对于非归档模式的数据库改为归档模式(主要以Oracle 10g为参考)使用以下步骤:
  1. SQL> alter system set log_archive_dest_1='location=/oracle/oracle10g/log/archive_log';
  该语句含义是确定归档日志的路径,实际上Oracle 10g可以生成多份一样的日志,保存多个位置,以防不测
  例如再添加一个日志位置可使用以下语句
  SQL>alter system set log_archive_dest_2='location=/oracle/oracle10g/log2/archive_log';
  2.关闭数据库
  SQL> shutdown immediate
  3.启动数据mount状态:
  SQL> startup mount;
  4、修改数据库为归档模式:
  SQL> alter database archivelog;
  5、打开数据库,查询:
  SQL> alter database open;
  修改日志文件命名格式:
  SQL> alter system set log_archive_max_processes = 5;
  SQL> alter system set log_archive_format = "archive_%t_%s_%r.log" scope=spfile;
  修改完成后可以查看日志模式是否修改成功!
  特别指出的是在Oracle 9i中还要修改参数alter system set log_archive_start = true才能生效,oracle 10g中已经废除了该参数,所以不需要设置该参数。
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号