Oracle 的联机日志文件

简介: Oracle 的联机日志文件

1、联机日志的相关概念

1.1 概念

联机日志文件又叫重做日志文件,记录了对数据库修改的信息,一个 Oracle 实例有一组或多组联机日志文件,每组包含一个或多个日志成员,同一组的日志成员内容相同,存放位置不同,防止日志文件组内某个日志文件损坏导致数据丢失。


lgwr 进程负责将数据写入日志文件,如果一组日志文件被写满,会自动切换到下一组日志文件。当所有的日志文件都被写满时,如果数据库为非归档模式,则直接覆盖 sequence 最小的日志组;如果数据库为归档模式,lgwr 进程开始等待归档进程将日志信息写入到归档日志中,然后覆盖 sequence 最小的日志组。


1.2 联机日志文件具有如下特点

(1)联机日志文件以组为单位工作;


(2)数据库正常工作至少需要两组联机日志;


(3)联机日志记录所有数据块的变化,用来做实例恢复(recover);


(4)同一组可以有多个成员;


(5)同一组的成员之间是镜像关系;


(6)默认情况下,日志成员写满 redo 时发生切换;


(7)日志切换时优先覆盖 sequence 最小的组;


(8)成员的位置和数量由控制文件决定。


1.3 日志文件的工作方式

日志文件采用按顺序循环写的方式。当一组联机日志组写满,LGWR 则将日志写入到下一组,当最后一组写满则从第一组开始写入。写入下一组的过程称为日志切换,切换时产生检查点,检查点的信息同时写入控制文件。


1.4 联机重做日志组

由一个或多个相同的联机日志文件组成一个联机重做日志组。数据库正常工作至少需要两个日志组,每组至少一个成员(生产环境建议每组至少两个成员,并放到不同的磁盘)。由 LGWR 后台进程同时将日志内容写入到一个组的所有成员。


3、联机重做日志成员


联机重做日志组内的每一个联机日志文件称为一个成员。一个组内的所有成员具有相同的日志序列号(log sequence number)且成员的大小相同。


每次日志切换时,Oracle 服务器分配一个新的 LSN 号给即将写入日志的日志文件组。LSN 号用于唯一区分每一个联机日志组和归档日志处于归档模式的联机日志,LSN 号在归档时也被写入到归档日志之中。


2、与日志有关的动态性能视图

2.1 查看日志组的信息

一共 3 个日志组,每个节点使用 3 组日志,每组拥有1个成员(1个日志文件)。


SQL> select * from v$log;

   GROUP#    THREAD#  SEQUENCE#      BYTES  BLOCKSIZE    MEMBERS ARCHIVED STATUS           FIRST_CHANGE# FIRST_TIME  NEXT_CHANGE# NEXT_TIME       CON_ID

---------- ---------- ---------- ---------- ---------- ---------- -------- ---------------- ------------- ----------- ------------ ----------- ----------

        1          1          1  209715200        512          1 NO       CURRENT                7647401 2023/1/12 1 1.8446744073                      0

        2          1          0  209715200        512          1 YES      UNUSED                       0                        0                      0

        3          1          0  209715200        512          1 YES      UNUSED                       0                        0                      0

说明:


(1)THREAD#:实例号,rac 集群环境每个实例都有对应的日志组。


(2)status 选项值


UNUSED: 表示该联机日志文件组对应的文件还从未被写入过数据。一般情况下,新创建的联机日志文件组会显示为这一状态。当日志切换到这一组时,状态会改变;


CURRENT:表示当前正在使用的日志文件组,该联机日志组是活动的;


ACTIVE:该组是活动的但不是当前组,实例恢复时需要这组日志。处于这一状态,虽然不是当前组,但该文件中内容尚未归档,或者文件中的数据没有全部写入数据文件,一旦需要实例恢复,必须借助该文件中保存的内容;


INACTIVE:实例恢复已不再需要这组联机日志组。对应的联机日志文件中的内容已被妥善处理,该组联机重做日志当前处于空闲状态;


CLEARING:表示该组日志文件正被重建,重建后该状态会变成UNUSED;


CLEARING_CURRENT:表示该组日志重建时出现错误。


2.2 查看日志文件的信息

SQL> select * from v$logfile;

   GROUP# STATUS  TYPE    MEMBER                                                                           IS_RECOVERY_DEST_FILE     CON_ID

---------- ------- ------- -------------------------------------------------------------------------------- --------------------- ----------

        3         ONLINE  /app/oracle/oradata/ORCL/redo03.log                                              NO                             0

        2         ONLINE  /app/oracle/oradata/ORCL/redo02.log                                              NO                             0

        1         ONLINE  /app/oracle/oradata/ORCL/redo01.log                                              NO                             0

3、手工切换日志

日志切换就是停止写入当前日志组,去写另外一个新的日志组。系统可以自动切换,也可以手工切换。当发生 switch logfile 时,系统会在后台完成 checkpoint 操作。


checkpoint 是一个事件,当 checkpoint 事件发生时,会触发 DBWn 进程,把 database buffer 中发生变化的脏数据写入数据文件,同时 chkp 进程更新控制文件(control file)和数据文件头(datafile header),使它们保持一致。


在 v$log表的 first_change#列、v$datafile 的 checkpoint_change# 以及 v$database 的 checkpoint_change# 列写入相同的 scn 号,scn(system change number)称为系统改变号,也称为检查点号。只要这三个值相同,就表明数据库是同步的,否则就要进行介质恢复。


SQL>select first_change# checkpoint from v$log a where a.status = 'CURRENT' union select b.CHECKPOINT_CHANGE# checkpoint from v$database b union select c.CHECKPOINT_CHANGE#  from v$datafile c;

CHECKPOINT

----------

  7706518

3.1 手工切换日志文件

3.1.1 切换日志命令

SQL> alter system switch logfile;

System altered

3.1.2 查看日志组状态

SQL> alter system switch logfile;

System altered

SQL> select group#,thread#,sequence#,status from v$log;

   GROUP#    THREAD#  SEQUENCE# STATUS

---------- ---------- ---------- ----------------

        1          1          7 INACTIVE

        2          1          8 ACTIVE

        3          1          9 CURRENT

SQL> alter system switch logfile;

System altered

SQL> select group#,thread#,sequence#,status from v$log;

   GROUP#    THREAD#  SEQUENCE# STATUS

---------- ---------- ---------- ----------------

        1          1         10 CURRENT

        2          1          8 ACTIVE

        3          1          9 ACTIVE

第2、3 组(属于节点1)日志处于 ACTIVE 状态,表明对应的数据还没有写盘。


3.2手工产生检查点,强制脏数据写盘

SQL> alter system checkpoint;

System altered

SQL> select group#,thread#,sequence#,status from v$log;

   GROUP#    THREAD#  SEQUENCE# STATUS

---------- ---------- ---------- ----------------

        1          1         10 CURRENT

        2          1          8 INACTIVE

        3          1          9 INACTIVE

3.3 日志切换频率

日志切换的频率与日志成员的大小、数据更新的频率等有关。一般日志组的大小应满足自动切换间隔 15-20 分钟左右的业务需求。可以使用以下语句查看日志文件的历史切换频率:


SQL> select to_char(first_time,'yyyymmddhh24') fist_time, count(*) from v$log_history group by to_char(first_time,'yyyymmddhh24') order by 1;

FIST_TIME    COUNT(*)

---------- ----------

2023011215          1

2023011216          1

2023011219          1

2023011310          8

4、添加日志文件组和日志组成员

4.1 添加日志文件组的方法

4.1.1 添加日志组时指定日志成员

alter database add logfile thread m group n ('成员1', '成员2'...) size 50m;

(1)成员1、成员2格式:/app/orcl/onlinelog/redo01.log


(2)thread 选项:指定给哪一个实例添加日志组


(3)group:添加的日志组编号


(4)size:指定日志成员的大小


4.1.2 添加日志组成员:可实现日志文件的多路复用

alter database add logfile member '成员' to group n;

(1)成员格式:/app/orcl/onlinelog/redo01.log


4.2 添加日志文件组的操作

4.2.1 查询日志组和日志文件信息

SQL> select group#,thread#,sequence#,status from v$log;

   GROUP#    THREAD#  SEQUENCE# STATUS

---------- ---------- ---------- ----------------

        1          1         10 CURRENT

        2          1          8 INACTIVE

        3          1          9 INACTIVE

     

SQL> select * from V$LOGFILE;

   GROUP# STATUS  TYPE    MEMBER                                                                           IS_RECOVERY_DEST_FILE     CON_ID

---------- ------- ------- -------------------------------------------------------------------------------- --------------------- ----------

        3         ONLINE  /app/oracle/oradata/ORCL/redo03.log                                              NO                             0

        2         ONLINE  /app/oracle/oradata/ORCL/redo02.log                                              NO                             0

        1         ONLINE  /app/oracle/oradata/ORCL/redo01.log  


4.2.2 为节点1添加日志组

SQL> alter database add logfile thread 1 group 4 ('app/oracle/oradata/ORCL/redo04.log') size 10M;

SQL> select group#,thread#,sequence#,status from v$log;

   GROUP#    THREAD#  SEQUENCE# STATUS

---------- ---------- ---------- ----------------

        1          1         10 CURRENT

        2          1          8 INACTIVE

        3          1          9 INACTIVE

        4          1          0 UNUSED

SQL> select * from V$LOGFILE;

   GROUP# STATUS  TYPE    MEMBER                                                                           IS_RECOVERY_DEST_FILE     CON_ID

---------- ------- ------- -------------------------------------------------------------------------------- --------------------- ----------

        3         ONLINE  /app/oracle/oradata/ORCL/redo03.log                                              NO                             0

        2         ONLINE  /app/oracle/oradata/ORCL/redo02.log                                              NO                             0

        1         ONLINE  /app/oracle/oradata/ORCL/redo01.log                                              NO                             0

        4         ONLINE  /app/oracle/oradata/ORCL/redo04.log                                              NO                             0

--多次切换日志 ,查询新创建的日志信息

SQL> alter system switch logfile;

System altered

SQL> alter system switch logfile;

System altered

SQL> alter system switch logfile;

System altered

SQL> select group#,thread#,sequence#,status from v$log;

   GROUP#    THREAD#  SEQUENCE# STATUS

---------- ---------- ---------- ----------------

        1          1         10 ACTIVE

        2          1         12 ACTIVE

        3          1         13 CURRENT

        4          1         11 ACTIVE

4.2.3 给日志组添加成员

[oracle@node1 oracle]$ mkdir /app/oracle/logfile

SQL> alter database add logfile member '/app/oracle/logfile/redo04.log' to group 4;

Database altered

SQL> select * from V$LOGFILE;

   GROUP# STATUS  TYPE    MEMBER                                                                           IS_RECOVERY_DEST_FILE     CON_ID

---------- ------- ------- -------------------------------------------------------------------------------- --------------------- ----------

        3         ONLINE  /app/oracle/oradata/ORCL/redo03.log                                              NO                             0

        2         ONLINE  /app/oracle/oradata/ORCL/redo02.log                                              NO                             0

        1         ONLINE  /app/oracle/oradata/ORCL/redo01.log                                              NO                             0

        4         ONLINE  /app/oracle/oradata/ORCL/redo04.log                                              NO                             0

        4 INVALID ONLINE  /app/oracle/logfile/redo04.log                                                   NO                             0

SQL> select * from v$log;

   GROUP#    THREAD#  SEQUENCE#      BYTES  BLOCKSIZE    MEMBERS ARCHIVED STATUS           FIRST_CHANGE# FIRST_TIME  NEXT_CHANGE# NEXT_TIME       CON_ID

---------- ---------- ---------- ---------- ---------- ---------- -------- ---------------- ------------- ----------- ------------ ----------- ----------

        1          1         14  209715200        512          1 NO       CURRENT                7708375 2023/1/13 1 1.8446744073                      0

        2          1         12  209715200        512          1 YES      INACTIVE               7708364 2023/1/13 1      7708367 2023/1/13 1          0

        3          1         13  209715200        512          1 YES      INACTIVE               7708367 2023/1/13 1      7708375 2023/1/13 1          0

        4          1         11   10485760        512          2 YES      INACTIVE               7708360 2023/1/13 1      7708364 2023/1/13 1          0

SQL> alter system switch logfile;

System altered

SQL> alter system switch logfile;

System altered

SQL> alter system switch logfile;

System altered

SQL> alter system switch logfile;

System altered

SQL> select * from v$logfile;

   GROUP# STATUS  TYPE    MEMBER                                                                           IS_RECOVERY_DEST_FILE     CON_ID

---------- ------- ------- -------------------------------------------------------------------------------- --------------------- ----------

        3         ONLINE  /app/oracle/oradata/ORCL/redo03.log                                              NO                             0

        2         ONLINE  /app/oracle/oradata/ORCL/redo02.log                                              NO                             0

        1         ONLINE  /app/oracle/oradata/ORCL/redo01.log                                              NO                             0

        4         ONLINE  /app/oracle/oradata/ORCL/redo04.log                                              NO                             0

        4         ONLINE  /app/oracle/logfile/redo04.log  

5、删除日志组和日志组成员

5.1 删除日志组的说明

(1)一个实例至少需要两个联机日志文件组;


(2)活动的或当前的日志组不能被删除;


(3)组内成员状态有 NULL 值或 INVALID 状态并存,组不可删除;


(4)日志组被删除后,物理文件需要手动删除。


5.2 删除日志组成员的说明

(1)不能删除组内唯一的成员;


(2)不能删除处于 active 和 current 状态组内的成员;


(3)要删除处于 active 和 current 状态组内的成员,应使用日志切换使其处于 INACTIVE 状态后再删除;


(4)对于组内如果一个成员为 NULL 值,一个为 INVALID,且组处入 INACTIVE,仅能删除 INVALID 状态成员;


(5)删除日志文件后,控制文件被更新;


(6)对处于归档模式下的数据库,删除成员时确保日志已被归档,查看 v$log 视图获得归档信息。


5.3 删除日志组

5.3.1 删除日志组命令

ALTER DATABASE DROP LOGFILE GROUP n;

删除日志组时先查看要删除的日志组的状态:状态为 INACTIVE 的日志组可以被删除,状态为 CURRENT 和 ACTIVE 的日志组不能被删除。

SQL> select group#,thread#,sequence#,status from v$log;

   GROUP#    THREAD#  SEQUENCE# STATUS

---------- ---------- ---------- ----------------

        1          1         18 INACTIVE

        2          1         16 INACTIVE

        3          1         17 INACTIVE

        4          1         19 CURRENT

SQL> alter system switch logfile;

System altered

SQL> select group#,thread#,sequence#,status from v$log;

   GROUP#    THREAD#  SEQUENCE# STATUS

---------- ---------- ---------- ----------------

        1          1         18 INACTIVE

        2          1         20 CURRENT

        3          1         17 INACTIVE

        4          1         19 ACTIVE

SQL> alter system checkpoint;

System altered

SQL> select group#,thread#,sequence#,status from v$log;

   GROUP#    THREAD#  SEQUENCE# STATUS

---------- ---------- ---------- ----------------

        1          1         18 INACTIVE

        2          1         20 CURRENT

        3          1         17 INACTIVE

        4          1         19 INACTIVE

SQL> alter database drop logfile group 4;

Database altered

5.3.2 删除日志组对应的日志文件

SQL> host ls -l /app/oracle/oradata/ORCL/

总用量 6159504

-rw-r----- 1 oracle oinstall   10928128 1月  13 11:50 control01.ctl

-rw-r----- 1 oracle oinstall   10928128 1月  13 11:50 control02.ctl

-rw-r----- 1 oracle oinstall  209715712 1月  13 11:41 redo01.log

-rw-r----- 1 oracle oinstall  209715712 1月  13 11:50 redo02.log

-rw-r----- 1 oracle oinstall  209715712 1月  13 11:41 redo03.log

-rw-r----- 1 oracle oinstall   10486272 1月  13 11:46 redo04.log

-rw-r----- 1 oracle oinstall 1226842112 1月  13 11:46 sysaux01.dbf

-rw-r----- 1 oracle oinstall  975183872 1月  13 11:46 system01.dbf

-rw-r----- 1 oracle oinstall   33562624 1月  12 22:01 temp01.dbf

-rw-r----- 1 oracle oinstall  536879104 1月  13 11:46 test01.DBF

-rw-r----- 1 oracle oinstall  351281152 1月  13 11:46 undotbs01.dbf

-rw-r----- 1 oracle oinstall    5251072 1月  13 11:46 users01.dbf

-rw-r----- 1 oracle oinstall 2541756416 1月  13 11:46 wms01.DBF

SQL> host rm -rf /app/oracle/oradata/ORCL/redo04.log

SQL> host ls -l /app/oracle/oradata/ORCL/

总用量 6149260

-rw-r----- 1 oracle oinstall   10928128 1月  13 11:51 control01.ctl

-rw-r----- 1 oracle oinstall   10928128 1月  13 11:51 control02.ctl

-rw-r----- 1 oracle oinstall  209715712 1月  13 11:41 redo01.log

-rw-r----- 1 oracle oinstall  209715712 1月  13 11:50 redo02.log

-rw-r----- 1 oracle oinstall  209715712 1月  13 11:41 redo03.log

-rw-r----- 1 oracle oinstall 1226842112 1月  13 11:46 sysaux01.dbf

-rw-r----- 1 oracle oinstall  975183872 1月  13 11:46 system01.dbf

-rw-r----- 1 oracle oinstall   33562624 1月  12 22:01 temp01.dbf

-rw-r----- 1 oracle oinstall  536879104 1月  13 11:46 test01.DBF

-rw-r----- 1 oracle oinstall  351281152 1月  13 11:46 undotbs01.dbf

-rw-r----- 1 oracle oinstall    5251072 1月  13 11:46 users01.dbf

-rw-r----- 1 oracle oinstall 2541756416 1月  13 11:46 wms01.DBF

SQL> host ls -l /app/oracle/logfile/

总用量 10244

-rw-r----- 1 oracle oinstall 10486272 1月  13 11:46 redo04.log

SQL> host rm -rf /app/oracle/logfile/redo04.log

SQL> host ls -l /app/oracle/logfile/

总用量 0

5.4 删除日志组成员

5.4.1 删除日志组成员的语法

ALTER DATABASE DROP LOGFILE MEMBER '成员';

5.4.2 添加和查看日志组及日志组成员的状态

SQL> alter database add logfile thread 1 group 4 ('/app/oracle/oradata/ORCL/redo04.log','/app/oracle/logfile/redo04.log') size 10M;

Database altered

SQL> alter database add logfile thread 1 group 5 ('/app/oracle/oradata/ORCL/redo05.log','/app/oracle/logfile/redo05.log') size 10M;

Database altered

SQL> select * from V$LOGFILE;

   GROUP# STATUS  TYPE    MEMBER                                                                           IS_RECOVERY_DEST_FILE     CON_ID

---------- ------- ------- -------------------------------------------------------------------------------- --------------------- ----------

        3         ONLINE  /app/oracle/oradata/ORCL/redo03.log                                              NO                             0

        2         ONLINE  /app/oracle/oradata/ORCL/redo02.log                                              NO                             0

        1         ONLINE  /app/oracle/oradata/ORCL/redo01.log                                              NO                             0

        4         ONLINE  /app/oracle/oradata/ORCL/redo04.log                                              NO                             0

        4         ONLINE  /app/oracle/logfile/redo04.log                                                   NO                             0

        5         ONLINE  /app/oracle/oradata/ORCL/redo05.log                                              NO                             0

        5         ONLINE  /app/oracle/logfile/redo05.log                                                   NO                             0

7 rows selected

SQL> select * from V$LOG;

   GROUP#    THREAD#  SEQUENCE#      BYTES  BLOCKSIZE    MEMBERS ARCHIVED STATUS           FIRST_CHANGE# FIRST_TIME  NEXT_CHANGE# NEXT_TIME       CON_ID

---------- ---------- ---------- ---------- ---------- ---------- -------- ---------------- ------------- ----------- ------------ ----------- ----------

        1          1         18  209715200        512          1 YES      INACTIVE               7708613 2023/1/13 1      7708616 2023/1/13 1          0

        2          1         20  209715200        512          1 NO       CURRENT                7708737 2023/1/13 1 1.8446744073                      0

        3          1         17  209715200        512          1 YES      INACTIVE               7708610 2023/1/13 1      7708613 2023/1/13 1          0

        4          1          0   10485760        512          2 YES      UNUSED                       0                        0                      0

        5          1          0   10485760        512          2 YES      UNUSED                       0                        0                      0

5.4.3 删除日志组成员的状态

删除第 4 组日志的成员:/app/oracle/logfile/redo04.log

SQL> alter database drop logfile member '/app/oracle/logfile/redo04.log';

Database altered

SQL> select * from v$logfile;

   GROUP# STATUS  TYPE    MEMBER                                                                           IS_RECOVERY_DEST_FILE     CON_ID

---------- ------- ------- -------------------------------------------------------------------------------- --------------------- ----------

        3         ONLINE  /app/oracle/oradata/ORCL/redo03.log                                              NO                             0

        2         ONLINE  /app/oracle/oradata/ORCL/redo02.log                                              NO                             0

        1         ONLINE  /app/oracle/oradata/ORCL/redo01.log                                              NO                             0

        4         ONLINE  /app/oracle/oradata/ORCL/redo04.log                                              NO                             0

        5         ONLINE  /app/oracle/oradata/ORCL/redo05.log                                              NO                             0

        5         ONLINE  /app/oracle/logfile/redo05.log                                                   NO                             0

6 rows selected

SQL> select * from v$log;

   GROUP#    THREAD#  SEQUENCE#      BYTES  BLOCKSIZE    MEMBERS ARCHIVED STATUS           FIRST_CHANGE# FIRST_TIME  NEXT_CHANGE# NEXT_TIME       CON_ID

---------- ---------- ---------- ---------- ---------- ---------- -------- ---------------- ------------- ----------- ------------ ----------- ----------

        1          1         18  209715200        512          1 YES      INACTIVE               7708613 2023/1/13 1      7708616 2023/1/13 1          0

        2          1         20  209715200        512          1 NO       CURRENT                7708737 2023/1/13 1 1.8446744073                      0

        3          1         17  209715200        512          1 YES      INACTIVE               7708610 2023/1/13 1      7708613 2023/1/13 1          0

        4          1          0   10485760        512          1 YES      UNUSED                       0                        0                      0

SQL> host ls -l /app/oracle/logfile/

总用量 20488

-rw-r----- 1 oracle oinstall 10486272 1月  13 12:32 redo04.log

-rw-r----- 1 oracle oinstall 10486272 1月  13 12:33 redo05.log

SQL> host rm -rf /app/oracle/logfile/redo04.log

 

SQL> host ls -l /app/oracle/logfile/

总用量 10244

-rw-r----- 1 oracle oinstall 10486272 1月  13 12:33 redo05.log

6、移动日志文件的位置

希望把第 4 组和第 8 组的日志文件修改为另一个名称,并添加一个成员,使每组日志具有两个成员。可以进行如下操作:


6.1 重新启动数据库为 mount 状态

SQL> startup force mount;

SQL> SELECT a.status FROM v$instance a;

STATUS

------------

MOUNTED

6.2 更改日志文件的名称

SQL> alter database rename file '/app/oracle/logfile/redo05.log' to '/app/oracle/logfile/redo05_2.log';

alter database rename file '/app/oracle/logfile/redo05.log' to '/app/oracle/logfile/redo05_2.log'

ORA-01511: 重命名日志/数据文件时出错

ORA-01512: 重命名日志文件 /app/oracle/logfile/redo05.log 时出错 - 未找到新文件 /app/oracle/logfile/redo05_2.log

ORA-27037: 无法获得文件状态

Linux-x86_64 Error: 2: No such file or directory

Additional information: 7

SQL> host cp /app/oracle/logfile/redo05.log /app/oracle/logfile/redo05_2.log

SQL> host ls -l /app/oracle/logfile

总用量 20488

-rw-r----- 1 oracle oinstall 10486272 1月  13 14:30 redo05_2.log

-rw-r----- 1 oracle oinstall 10486272 1月  13 14:20 redo05.log

SQL> alter database rename file '/app/oracle/logfile/redo05.log' to '/app/oracle/logfile/redo05_2.log';

Database altered


6.3 删除原有文件

SQL> host ls -l /app/oracle/logfile

总用量 20488

-rw-r----- 1 oracle oinstall 10486272 1月  13 14:30 redo05_2.log

-rw-r----- 1 oracle oinstall 10486272 1月  30 10:39 redo05.log

SQL> host rm -rf /app/oracle/logfile/redo05.log

SQL> host ls -l /app/oracle/logfile

总用量 10244

-rw-r----- 1 oracle oinstall 10486272 1月  13 14:30 redo05_2.log

6.4 打开数据库,查询日志组和日志成员信息

SQL> alter database open;

Database altered

SQL> SELECT * FROM v$instance;

INSTANCE_NUMBER INSTANCE_NAME    HOST_NAME                                                        VERSION           VERSION_LEGACY    VERSION_FULL      STARTUP_TIME STATUS       PARALLEL    THREAD# ARCHIVER LOG_SWITCH_WAIT LOGINS     SHUTDOWN_PENDING DATABASE_STATUS   INSTANCE_ROLE      ACTIVE_STATE BLOCKED     CON_ID INSTANCE_MODE EDITION FAMILY                                                                           DATABASE_TYPE

--------------- ---------------- ---------------------------------------------------------------- ----------------- ----------------- ----------------- ------------ ------------ -------- ---------- -------- --------------- ---------- ---------------- ----------------- ------------------ ------------ ------- ---------- ------------- ------- -------------------------------------------------------------------------------- ---------------

             1 orcl             node1.x88.com                                                    19.0.0.0.0        19.0.0.0.0        19.3.0.0.0        2023/1/13 12 OPEN         NO                1 STARTED                  ALLOWED    NO               ACTIVE            PRIMARY_INSTANCE   NORMAL       NO               0 REGULAR       EE                                                                                       SINGLE

SQL> SELECT status FROM v$instance;

STATUS

------------

OPEN

SQL> SELECT * FROM v$logfile;

   GROUP# STATUS  TYPE    MEMBER                                                                           IS_RECOVERY_DEST_FILE     CON_ID


相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
27天前
|
Linux Shell
Linux手动清理Linux脚本日志定时清理日志和log文件执行表达式
Linux手动清理Linux脚本日志定时清理日志和log文件执行表达式
79 1
|
1月前
|
Shell Linux C语言
【Shell 命令集合 网络通讯 】Linux 查看系统中的UUCP日志文件 uulog命令 使用指南
【Shell 命令集合 网络通讯 】Linux 查看系统中的UUCP日志文件 uulog命令 使用指南
29 0
|
1月前
|
XML Java 数据库连接
struts+hibernate+oracle+easyui实现lazyout组件的简单案例——hibernate的config文件(hibernate.cfg.xml)
struts+hibernate+oracle+easyui实现lazyout组件的简单案例——hibernate的config文件(hibernate.cfg.xml)
11 0
|
1月前
|
监控 Shell Linux
【Shell 命令集合 系统管理 】Linux 自动轮转(log rotation)日志文件 logrotate命令 使用指南
【Shell 命令集合 系统管理 】Linux 自动轮转(log rotation)日志文件 logrotate命令 使用指南
51 0
|
2天前
|
Java 数据安全/隐私保护 开发者
【SpringBoot】讲清楚日志文件&&lombok
【SpringBoot】讲清楚日志文件&&lombok
13 5
|
9天前
|
运维 Oracle 安全
Oracle的三重奏:密码文件、警告文件与跟踪文件
【4月更文挑战第19天】Oracle数据库的三大守护者:密码文件保护系统免受未经授权访问,如同宝藏的“密码锁”;警告文件似“哨兵”,记录错误信息,助于及时解决问题;跟踪文件扮演“侦探”角色,详尽记录操作,便于性能优化和故障排查。这三份文件共同确保数据王国的安全与稳定。作为管理员,重视并善用它们是关键。
|
9天前
|
运维 Oracle 关系型数据库
Oracle日志文件:数据王国的“记事本”
【4月更文挑战第19天】Oracle日志文件是数据库稳定运行的关键,记录数据变更历史,用于恢复和故障处理。它们协调并发操作,确保数据一致性和完整性。日志文件实时写入操作信息并定期刷新到磁盘,便于数据恢复。然而,日志文件需备份和归档以保证安全性,防止数据丢失。日志文件,数据王国的“记事本”,默默守护数据安全。
|
1月前
|
监控 Shell Linux
【Shell 命令集合 系统管理 】Linux 实时监控日志文件 swatch命令 使用指南
【Shell 命令集合 系统管理 】Linux 实时监控日志文件 swatch命令 使用指南
36 1
|
1月前
|
消息中间件 测试技术 Python
Python使用多线程解析超大日志文件
Python使用多线程解析超大日志文件
24 0

推荐镜像

更多