1、问题背景:
客户数据库宕机,排查原因;
1>查看数据库日志
1 Sat Oct 26 01:31:21 2019 2 Thread 1 cannot allocate new log, sequence 17948 3 Checkpoint not complete 4 Current log# 1 seq# 17947 mem# 0: /oradata/orcl/redo01.log 5 Thread 1 advanced to log sequence 17948 (LGWR switch) 6 Current log# 2 seq# 17948 mem# 0: /oradata/orcl/redo02.log 7 Sat Oct 26 01:31:23 2019 8 Archived Log entry 17941 added for thread 1 sequence 17947 ID 0x5a4a3ef2 dest 1: 9 10 Sat Oct 26 08:20:04 2019 11 Starting ORACLE instance (normal) 12 LICENSE_MAX_SESSION = 0 13 LICENSE_SESSIONS_WARNING = 0 14 Picked latch-free SCN scheme 3 15 Autotune of undo retention is turned on. 16 IMODE=BR 17 ILAT =167 18 LICENSE_MAX_USERS = 0 19 SYS auditing is disabled 20 Starting up:
数据库1:31分还是正常状态,中间没有任何日志记录,到8:20开始启动,怀疑是操作系统突然宕机导致的数据库宕机
查看操作系统日志:
1 Oct 26 01:30:01 OA-DBSVR systemd: Starting Session 39786 of user oracle. 2 Oct 26 01:30:01 OA-DBSVR systemd: Started Session 39786 of user oracle. 3 Oct 26 01:30:01 OA-DBSVR systemd: Starting Session 39785 of user root. 4 Oct 26 01:30:01 OA-DBSVR systemd: Started Session 39785 of user root. 5 6 Oct 26 08:36:22 OA-DBSVR rsyslogd: [origin software="rsyslogd" swVersion="7.4.7" x-pid="1000" x-info="http://www.rsyslog.com"] start 7 Oct 26 08:36:19 OA-DBSVR journal: Runtime journal is using 8.0M (max 1.5G, leaving 2.3G of free 15.7G, current limit 1.5G). 8 Oct 26 08:36:19 OA-DBSVR kernel: Initializing cgroup subsys cpuset 9 Oct 26 08:36:19 OA-DBSVR kernel: Initializing cgroup subsys cpu 10 Oct 26 08:36:19 OA-DBSVR kernel: Initializing cgroup subsys cpuacct
操作系统果然在相同的时间段宕机,需要排查操作系统的问题
操作系统的日志记录情况:
一、一般的日志
1 /var/log/messages —包括整体系统信息,其中也包含系统启动期间的日志。此外,mail,cron,daemon,kern和auth等内容也记录在var/log/messages日志中。 2 /var/log/dmesg — 包含内核缓冲信息(kernel ringbuffer)。在系统启动时,会在屏幕上显示许多与硬件有关的信息。可以用dmesg查看它们。 3 /var/log/auth.log — 包含系统授权信息,包括用户登录和使用的权限机制等。 /var/log/boot.log — 包含系统启动时的日志。 4 /var/log/daemon.log — 包含各种系统后台守护进程日志信息。 5 /var/log/dpkg.log – 包括安装或dpkg命令清除软件包的日志。 6 /var/log/kern.log – 包含内核产生的日志,有助于在定制内核时解决问题。 7 /var/log/lastlog —记录所有用户的最近信息。这不是一个ASCII文件,因此需要用lastlog命令查看内容。 8 /var/log/maillog /var/log/mail.log —包含来着系统运行电子邮件服务器的日志信息。例如,sendmail日志信息就全部送到这个文件中。 9 /var/log/user.log — 记录所有等级用户信息的日志。 10 /var/log/Xorg.x.log — 来自X的日志信息。 11 /var/log/alternatives.log – 更新替代信息都记录在这个文件中。 12 /var/log/btmp –记录所有失败登录信息。使用last命令可以查看btmp文件。例如,”last -f /var/log/btmp | more“。 13 /var/log/cups — 涉及所有打印信息的日志。 14 /var/log/anaconda.log —在安装Linux时,所有安装信息都储存在这个文件中。 /var/log/yum.log — 包含使用yum安装的软件包信息。 15 /var/log/cron — 每当cron进程开始一个工作时,就会将相关信息记录在这个文件中。 16 /var/log/secure —包含验证和授权方面信息。例如,sshd会将所有信息记录(其中包括失败登录)在这里。 17 /var/log/wtmp或/var/log/utmp —包含登录信息。使用wtmp可以找出谁正在登陆进入系统,谁使用命令显示这个文件或信息等。 18 /var/log/faillog – 包含用户登录失败信息。此外,错误登录命令也会记录在本文件中。
二、(特殊)除了上述Log文件以外
1 /var/log还基于系统的具体应用包含以下一些子目录: 2 /var/log/httpd/或/var/log/apache2 —包含服务器access_log和error_log信息。 3 /var/log/lighttpd/ — 包含light HTTPD的access_log和error_log。 4 /var/log/mail/ – 这个子目录包含邮件服务器的额外日志。 5 /var/log/prelink/ — 包含.so文件被prelink修改的信息。 6 /var/log/audit/ — 包含被 Linux audit daemon储存的信息。 7 /var/log/samba/ – 包含由samba存储的信息。 8 /var/log/sa/ — 包含每日由sysstat软件包收集的sar文件。 9 /var/log/sssd/ – 用于守护进程安全服务。