添加日志文件组与日志文件成员
生活随笔
收集整理的这篇文章主要介绍了
添加日志文件组与日志文件成员
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
添加日志文件组与日志文件成员 首先确定当前登录的账户的权限,是否包含创建日志文件组或者日志文件成员的alter database 系统权限。 SQL> select privilege from user_sys_privs 2 where privilege='ALTER DATABASE'; PRIVILEGE ---------------------------------------- ALTER DATABASE 在添加日志文件组或者日志文件成员的时候先查看下数据库兼容参数。 SQL> show parameter compatible NAME TYPE VALUE ------------------------------------ ----------- ------------ compatible string 11.2.0.0.0 compatible >=10.2.0 添加日志文件组或者日志文件成员,就不需要考虑是否会超过maxlogfiles、 maxlogmembers 的上限值限制了。 确定系统现有的日志文件组数与组中的日志文件成员数。 SQL> select group#,member from V$logfile; GROUP# MEMBER ---------- ---------------------------------------- 1 /opt/oracle11g/oradata/oracl/redo01.log 2 /opt/oracle11g/oradata/oracl/redo02.log 3 /opt/oracle11g/oradata/oracl/redo03.log 系统中共有3个日志文件组,每个组中各有一个日志文件成员。 往系统中添加一个日志文件组,组中日志文件成员数量是2. SQL> alter database add logfile group 4 2 ('/opt/oracle11g/oradata/oracl/redo401.log','/opt/oracle11g/oradata/oracl/redo402.log') 3 size 20M; Database altered. 注:在实际的系统中上面的语句是明显不合理的,因为把两个日志文件成员放置在相同磁盘中。为了日志文件组中日志文件的可用性,应该把不同的日志文件成员放置在不同的磁盘上面,以免出现日志切换到该组的时候因介质故障导致日志文件不能访问,从而数据库宕机。查看添加以后的日志信息。另外应该保持系统中所有的日志文件的大小相同,这里的20M和系统以后存在的日志文件的大小50M不相同。 SQL> select group#,member from V$logfile; GROUP# MEMBER ---------- ---------------------------------------- 1 /opt/oracle11g/oradata/oracl/redo01.log 2 /opt/oracle11g/oradata/oracl/redo02.log 3 /opt/oracle11g/oradata/oracl/redo03.log 4 /opt/oracle11g/oradata/oracl/redo401.log 4 /opt/oracle11g/oradata/oracl/redo402.log SQL> select group#,blocksize,archived,members,status 2 from V$log; GROUP# BLOCKSIZE ARC MEMBERS STATUS ---------- ---------- --- ---------- ---------------- 1 512 NO 1 INACTIVE 2 512 NO 1 INACTIVE 3 512 NO 1 CURRENT 4 512 YES 2 UNUSED 新添加的日志文件组一般是unused状态的,表示该日志文件组还没有别写入过。不过也可能是其他状态,比如添加完该日志文件组不久就发生了日志却换,则状态应该是current。另外我们在创建日志文件的时候是没有指定blocksize,所有会使用默认的磁盘扇区的大小,这里是512 bytes。磁盘扇区的大小 不是4KB,指定4KB,1kB为block的大小也是没用的。 SQL> alter database add logfile group 5 2 ('/opt/oracle11g/oradata/oracl/redo501.log','/opt/oracle11g/oradata/oracl/redo502.log') 3 size 20M blocksize 4096; alter database add logfile group 5 * ERROR at line 1: ORA-01378: The logical block size (4096) of file /opt/oracle11g/oradata/oracl/redo501.log is not compatible with the disk sector size (media sector size is 512 and host sector size is 512) 错误信息已经说明了一切。如果磁盘的扇区是4KB,则可以选择4KB,1KB,512bytes 中的一个值为日志文件的block大小(database version 11.2.0 以后)。 添加日志组日志文件成员: 添加日志组日志文件成员适用于日志组已经存在,但是其中的一个或者多个日志文件成员因为某些原因被删除了。下面往group 2中添加一个日志文件成员。 SQL> alter database add logfile member 2 '/opt/oracle11g/oradata/oracl/redo.log' 3 to group 2; Database altered. 添加日志文件不需要指定大小。oracle 会自动根据该组已经存在的日志文件成员的大小设置新添加的日志文件成员大小。 注:最最重要的是为什么要添加日志文件组,为什么要添加日志文件成员?
总结
以上是生活随笔为你收集整理的添加日志文件组与日志文件成员的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: Chapter 1:Introducti
- 下一篇: css文字和背景色渐变色