我的编程空间,编程开发者的网络收藏夹
学习永远不晚

【Oracle Database】数据库日志管理

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

【Oracle Database】数据库日志管理

查询日志文件
SQL> col member for a50
SQL> select group#,status,type,member from v$logfile order by group#;

    GROUP# STATUS  TYPE    MEMBER
---------- ------- ------- --------------------------------------------------
         1         ONLINE  /u01/app/oracle/oradata/wallet/redo01.log
         2         ONLINE  /u01/app/oracle/oradata/wallet/redo02.log
         3         ONLINE  /u01/app/oracle/oradata/wallet/redo03.log

查询日志组
SQL> select group#,sequence#,members,bytes,status,archived from v$log;

    GROUP#  SEQUENCE#    MEMBERS      BYTES STATUS           ARC
---------- ---------- ---------- ---------- ---------------- ---
         1         25          1   52428800 INACTIVE         YES
         2         26          1   52428800 INACTIVE         YES
         3         27          1   52428800 CURRENT          NO

删除日志组1
SQL> alter database drop logfile group 1;
Database altered.

SQL> host rm -rf /u01/app/oracle/oradata/wallet/redo01.log

创建日志组1
SQL> alter database add logfile group 1
('/u01/app/oracle/oradata/wallet/redo01a.log','/u01/app/oracle/oradata/wallet/redo01b.log')
size 50M;
Database altered.

删除日志组2
SQL> alter database drop logfile group 2;
Database altered.

SQL> host rm -rf /u01/app/oracle/oradata/wallet/redo02.log

创建日志组2
SQL> alter database add logfile group 2
('/u01/app/oracle/oradata/wallet/redo02a.log','/u01/app/oracle/oradata/wallet/redo02b.log')
size 50M;
Database altered.

日志组切换
SQL> alter system switch logfile;
System altered.

执行检查点
SQL> alter system checkpoint;
System altered.

删除日志组3
SQL> alter database drop logfile group 3;
Database altered.

SQL> host rm -rf /u01/app/oracle/oradata/wallet/redo03.log

创建日志组3
SQL> alter database add logfile group 3
('/u01/app/oracle/oradata/wallet/redo03a.log','/u01/app/oracle/oradata/wallet/redo03b.log')
size 50M;
Database altered.

SQL> select group#,status,type,member from v$logfile order by group#;

    GROUP# STATUS  TYPE    MEMBER
---------- ------- ------- --------------------------------------------------
         1         ONLINE  /u01/app/oracle/oradata/wallet/redo01a.log
         1         ONLINE  /u01/app/oracle/oradata/wallet/redo01b.log
         2         ONLINE  /u01/app/oracle/oradata/wallet/redo02b.log
         2         ONLINE  /u01/app/oracle/oradata/wallet/redo02a.log
         3         ONLINE  /u01/app/oracle/oradata/wallet/redo03b.log
         3         ONLINE  /u01/app/oracle/oradata/wallet/redo03a.log
         
SQL> select group#,sequence#,members,bytes,status,archived from v$log;

    GROUP#  SEQUENCE#    MEMBERS      BYTES STATUS           ARC
---------- ---------- ---------- ---------- ---------------- ---
         1         28          2   52428800 CURRENT          NO
         2          0          2   52428800 UNUSED           YES
         3          0          2   52428800 UNUSED           YES


增加日志文件
SQL>  alter database add logfile member
'/u01/app/oracle/oradata/wallet/redo01c.log' to group 1,
'/u01/app/oracle/oradata/wallet/redo02c.log' to group 2,
'/u01/app/oracle/oradata/wallet/redo03c.log' to group 3;
Database altered.

SQL> select group#,status,type,member from v$logfile order by group#;

    GROUP# STATUS  TYPE    MEMBER
---------- ------- ------- --------------------------------------------------
         1         ONLINE  /u01/app/oracle/oradata/wallet/redo01b.log
         1 INVALID ONLINE  /u01/app/oracle/oradata/wallet/redo01c.log
         1         ONLINE  /u01/app/oracle/oradata/wallet/redo01a.log
         2         ONLINE  /u01/app/oracle/oradata/wallet/redo02a.log
         2         ONLINE  /u01/app/oracle/oradata/wallet/redo02b.log
         2 INVALID ONLINE  /u01/app/oracle/oradata/wallet/redo02c.log
         3         ONLINE  /u01/app/oracle/oradata/wallet/redo03a.log
         3         ONLINE  /u01/app/oracle/oradata/wallet/redo03b.log
         3 INVALID ONLINE  /u01/app/oracle/oradata/wallet/redo03c.log

SQL> select group#,sequence#,members,bytes,status,archived from v$log;       

    GROUP#  SEQUENCE#    MEMBERS      BYTES STATUS           ARC
---------- ---------- ---------- ---------- ---------------- ---
         1         28          3   52428800 CURRENT          NO
         2          0          3   52428800 UNUSED           YES
         3          0          3   52428800 UNUSED           YES
         
删除日志文件
SQL> alter database drop logfile member
'/u01/app/oracle/oradata/wallet/redo03c.log';
Database altered.

SQL> host rm -rf /u01/app/oracle/oradata/wallet/redo03c.log

SQL>  alter database drop logfile member
'/u01/app/oracle/oradata/wallet/redo02c.log';
Database altered.

SQL> host rm -rf /u01/app/oracle/oradata/wallet/redo02c.log


SQL> alter system switch logfile;

System altered.

SQL> alter system checkpoint;
System altered.

SQL>  alter database drop logfile member
'/u01/app/oracle/oradata/wallet/redo01c.log';
Database altered.

SQL> host rm -rf /u01/app/oracle/oradata/wallet/redo01c.log

移动日志文件
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> quit

[oracle@wallet01 ~]$ cp /u01/app/oracle/oradata/wallet/redo01b.log /u02/app/oracle/oradata/wallet/redo01b.log
[oracle@wallet01 ~]$ cp /u01/app/oracle/oradata/wallet/redo02b.log /u02/app/oracle/oradata/wallet/redo02b.log 
[oracle@wallet01 ~]$ cp /u01/app/oracle/oradata/wallet/redo03b.log /u02/app/oracle/oradata/wallet/redo03b.log  

[oracle@wallet01 ~]$ sqlplus / as sysdba
SQL> startup mount
ORACLE instance started.

Total System Global Area 1068937216 bytes
Fixed Size                  2260088 bytes
Variable Size             335545224 bytes
Database Buffers          725614592 bytes
Redo Buffers                5517312 bytes
Database mounted.

SQL> alter database
rename file '/u01/app/oracle/oradata/wallet/redo01b.log'
to '/u02/app/oracle/oradata/wallet/redo01b.log';
Database altered.

SQL> alter database
rename file '/u01/app/oracle/oradata/wallet/redo02b.log'
to '/u02/app/oracle/oradata/wallet/redo02b.log';
Database altered.

SQL> alter database
rename file '/u01/app/oracle/oradata/wallet/redo03b.log'
to '/u02/app/oracle/oradata/wallet/redo03b.log';
Database altered.

SQL> alter database open;
Database altered.

SQL> select group#,status,type,member from v$logfile order by group#;

    GROUP# STATUS  TYPE    MEMBER
---------- ------- ------- --------------------------------------------------
         1         ONLINE  /u01/app/oracle/oradata/wallet/redo01a.log
         1         ONLINE  /u02/app/oracle/oradata/wallet/redo01b.log
         2         ONLINE  /u02/app/oracle/oradata/wallet/redo02b.log
         2         ONLINE  /u01/app/oracle/oradata/wallet/redo02a.log
         3         ONLINE  /u02/app/oracle/oradata/wallet/redo03b.log
         3         ONLINE  /u01/app/oracle/oradata/wallet/redo03a.log


SQL> select dbid,name,log_mode from v$database;

      DBID NAME      LOG_MODE
---------- --------- ------------
3215665862 WALLET    NOARCHIVELOG

SQL> archive log list;
Database log mode              No Archive Mode
Automatic archival             Disabled
Archive destination            ?/dbs/arch
Oldest online log sequence     28
Current log sequence           29

SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.

SQL> startup mount
ORACLE instance started.

Total System Global Area 1068937216 bytes
Fixed Size                  2260088 bytes
Variable Size             335545224 bytes
Database Buffers          725614592 bytes
Redo Buffers                5517312 bytes
Database mounted.

SQL> alter system set log_archive_dest_1='LOCATION=/u01/app/oracle/archive01/ mandatory';
System altered.

SQL> alter system set log_archive_dest_2='LOCATION=/u02/app/oracle/archive02/ optional';
System altered.

SQL> alter database archivelog;
Database altered.

SQL> alter database open;
Database altered.

SQL> select dbid,name,log_mode from v$database;

      DBID NAME      LOG_MODE
---------- --------- ------------
3215665862 WALLET    ARCHIVELOG

SQL> archive log list;
Database log mode              Archive Mode
Automatic archival             Enabled
Archive destination            /u02/app/oracle/archive02/
Oldest online log sequence     28
Next log sequence to archive   29
Current log sequence           29

SQL> show parameter log_archive_dest_1;
NAME                                 TYPE                              VALUE
------------------------------------ --------------------------------- ------------------------------
log_archive_dest_1                   string                            LOCATION=/u01/app/oracle/archi
                                                                       ve01/ mandatory                                                                       
SQL> show parameter log_archive_dest_2;
NAME                                 TYPE                              VALUE
------------------------------------ --------------------------------- ------------------------------
log_archive_dest_2                   string                            LOCATION=/u02/app/oracle/archi
                                                                       ve02/ optional
SQL> show parameter log_archive_max
NAME                                 TYPE                              VALUE
------------------------------------ --------------------------------- ------------------------------
log_archive_max_processes            integer                           4

SQL> show parameter log_archive_min_succeed_dest
NAME                                 TYPE                              VALUE
------------------------------------ --------------------------------- ------------------------------
log_archive_min_succeed_dest         integer                           1

SQL> show parameter log_archive_format
NAME                                 TYPE                              VALUE
------------------------------------ --------------------------------- ------------------------------
log_archive_format                   string                            %t_%s_%r.dbf

手动归档日志文件
SQL> alter system archive log current;
System altered.

归档目的地
SQL> set line 200
SQL> col dest_name for a30
SQL> col destination for a30
SQL> select dest_name,status,binding,destination from v$archive_dest;
DEST_NAME                      STATUS                      BINDING                     DESTINATION
------------------------------ --------------------------- --------------------------- ------------------------------
LOG_ARCHIVE_DEST_1             VALID                       MANDATORY                   /u01/app/oracle/archive01/
LOG_ARCHIVE_DEST_2             VALID                       OPTIONAL                    /u02/app/oracle/archive02/
LOG_ARCHIVE_DEST_3             INACTIVE                    OPTIONAL
LOG_ARCHIVE_DEST_4             INACTIVE                    OPTIONAL
LOG_ARCHIVE_DEST_5             INACTIVE                    OPTIONAL
LOG_ARCHIVE_DEST_6             INACTIVE                    OPTIONAL
LOG_ARCHIVE_DEST_7             INACTIVE                    OPTIONAL
LOG_ARCHIVE_DEST_8             INACTIVE                    OPTIONAL
LOG_ARCHIVE_DEST_9             INACTIVE                    OPTIONAL
LOG_ARCHIVE_DEST_10            INACTIVE                    OPTIONAL
LOG_ARCHIVE_DEST_11            INACTIVE                    OPTIONAL

归档进程
SQL> select * from v$archive_processes;
   PROCESS STATUS                         LOG_SEQUENCE STATE
---------- ------------------------------ ------------ ------------
         0 ACTIVE                                    0 IDLE
         1 ACTIVE                                    0 IDLE
         2 ACTIVE                                    0 IDLE
         3 ACTIVE                                    0 IDLE
         4 STOPPED                                   0 IDLE
         5 STOPPED                                   0 IDLE
         6 STOPPED                                   0 IDLE
         7 STOPPED                                   0 IDLE
         8 STOPPED                                   0 IDLE
         9 STOPPED                                   0 IDLE
        10 STOPPED                                   0 IDLE
        
归档日志文件
SQL> set line 200
SQL> col name for a50
SQL> col status for a10
SQL> select dest_id,name,sequence#,status from v$archived_log;

   DEST_ID Tablespace Name                                     SEQUENCE# Status
---------- -------------------------------------------------- ---------- ----------
         1 /u01/app/oracle/archive01/1_29_1007721545.dbf              29 A
         2 /u02/app/oracle/archive02/1_29_1007721545.dbf              29 A
         1 /u01/app/oracle/archive01/1_30_1007721545.dbf              30 A
         2 /u02/app/oracle/archive02/1_30_1007721545.dbf              30 A
         1 /u01/app/oracle/archive01/1_31_1007721545.dbf              31 A
         2 /u02/app/oracle/archive02/1_31_1007721545.dbf              31 A
         1 /u01/app/oracle/archive01/1_32_1007721545.dbf              32 A
         2 /u02/app/oracle/archive02/1_32_1007721545.dbf              32 A


免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

【Oracle Database】数据库日志管理

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Oracle Index函数与数据库日志管理

Oracle Index函数是用来提高数据库查询性能的工具,它可以加快数据检索的速度。通过在数据库表上创建索引,可以快速定位到需要的数据,避免全表扫描。数据库日志管理是指管理数据库操作日志的过程。数据库操作日志记录了数据库的所有操作,包括
Oracle Index函数与数据库日志管理
2024-08-16

Oracle 数据库日志种类及管理技巧

Oracle 数据库日志种类及管理技巧在Oracle数据库中,日志是非常重要的组成部分,它记录了数据库操作的详细信息,以便在出现故障或意外情况时进行故障恢复和数据还原。在本文中,我们将介绍Oracle数据库中主要的日志种类,以及一些管理技
Oracle 数据库日志种类及管理技巧
2024-03-11

【Oracle Database】数据库完整备份与日志备份

[oracle@wallet01 ~]$ cat /home/oracle/script/full_backup.sh#!/bin/bashif [ -f ~/.bash_profile ];then . ~/.bash_profilefiexport SH

	【Oracle Database】数据库完整备份与日志备份
2015-06-12

MySQL数据库审计日志管理

MySQL数据库审计日志管理是确保数据库安全性和可追溯性的重要环节。通过记录和分析数据库的访问和操作行为,审计日志可以帮助管理员发现潜在的安全威胁、分析性能瓶颈以及追踪潜在的数据篡改或误操作。以下是关于MySQL数据库审计日志管理的一些关键
MySQL数据库审计日志管理
2024-10-20

oracle数据库如何清理日志

Oracle数据库的日志文件主要包括归档日志和在线重做日志。清理日志的操作主要是针对归档日志进行的。以下是清理归档日志的方法:1. 查看归档日志的状态:使用以下命令可以查看当前归档日志的状态:```sqlSELECT * FROM V$AR
2023-09-13

MySQL INSERT锁与数据库日志管理

MySQL中的INSERT锁是一种表级别的锁,它在插入数据时会对整个表进行加锁,防止其他会话对表进行写操作。这种锁在插入大量数据时非常有效,可以防止其他会话对同一表进行写操作,从而保证数据的一致性。数据库日志管理是指MySQL中对数据库操
MySQL INSERT锁与数据库日志管理
2024-08-19

数据库学习之十:mysql日志管理

十、mysql日志管理课程大纲1、MySQL日志类型简介2、MySQL错误日志配置及查看3、MySQL binlog介绍及管理实战4、MySQL 慢查询日志设置及管理实战1、日志的类型简介mysql> show variables like "%log_err
数据库学习之十:mysql日志管理
2014-12-31

MySQL数据库日志管理最佳实践

MySQL数据库日志管理是确保数据库稳定性和可维护性的关键部分。以下是一些最佳实践,可以帮助你有效地管理MySQL数据库日志:选择合适的日志类型:错误日志:记录启动、运行或停止mysqld时出现的问题。查询日志:记录建立的客户端连接和执行
MySQL数据库日志管理最佳实践
2024-10-20

oracle数据库日志满了如何处理

当Oracle数据库的日志满了时,可以采取以下几种处理方式:增加日志文件的大小:可以通过增加redo log文件的大小来扩容日志空间,这样可以延长数据库日志满的时间。增加redo log文件的数量:可以增加redo log文件的数量,这样可
oracle数据库日志满了如何处理
2024-04-12

oracle数据库的日志在哪

oracle 数据库日志存储在特定位置,具体如下:重做日志文件在线重做日志文件归档日志文件sql trace 日志文件诊断日志文件需要注意,这些日志文件的位置可能因安装和配置而异。Oracle 数据库日志位置Oracle 数据库日志记录系
oracle数据库的日志在哪
2024-05-11

oracle数据库日志怎么看

查看 oracle 数据库日志的方法如下:使用 alter system 或 alter session 命令启用即时跟踪会话。查询 v$log_history、v$logfile 或 v$log 视图。默认情况下,日志文件位于 $orac
oracle数据库日志怎么看
2024-05-11

编程热搜

目录