标签云
asm恢复 bbed bootstrap$ dul In Memory kcbzib_kcrsds_1 kccpb_sanity_check_2 kfed MySQL恢复 ORA-00312 ORA-00607 ORA-00704 ORA-01110 ORA-01555 ORA-01578 ORA-08103 ORA-600 2131 ORA-600 2662 ORA-600 2663 ORA-600 3020 ORA-600 4000 ORA-600 4137 ORA-600 4193 ORA-600 4194 ORA-600 16703 ORA-600 kcbzib_kcrsds_1 ORA-600 KCLCHKBLK_4 ORA-15042 ORA-15196 ORACLE 12C oracle dul ORACLE PATCH Oracle Recovery Tools oracle加密恢复 oracle勒索 oracle勒索恢复 oracle异常恢复 Oracle 恢复 ORACLE恢复 ORACLE数据库恢复 oracle 比特币 OSD-04016 YOUR FILES ARE ENCRYPTED 勒索恢复 比特币加密文章分类
- Others (2)
- 中间件 (2)
- WebLogic (2)
- 操作系统 (102)
- 数据库 (1,683)
- DB2 (22)
- MySQL (73)
- Oracle (1,545)
- Data Guard (52)
- EXADATA (8)
- GoldenGate (24)
- ORA-xxxxx (159)
- ORACLE 12C (72)
- ORACLE 18C (6)
- ORACLE 19C (15)
- ORACLE 21C (3)
- Oracle 23ai (7)
- Oracle ASM (68)
- Oracle Bug (8)
- Oracle RAC (53)
- Oracle 安全 (6)
- Oracle 开发 (28)
- Oracle 监听 (28)
- Oracle备份恢复 (565)
- Oracle安装升级 (92)
- Oracle性能优化 (62)
- 专题索引 (5)
- 勒索恢复 (79)
- PostgreSQL (18)
- PostgreSQL恢复 (6)
- SQL Server (27)
- SQL Server恢复 (8)
- TimesTen (7)
- 达梦数据库 (2)
- 生活娱乐 (2)
- 至理名言 (11)
- 虚拟化 (2)
- VMware (2)
- 软件开发 (37)
- Asp.Net (9)
- JavaScript (12)
- PHP (2)
- 小工具 (20)
-
最近发表
- ORA-15411: Failure groups in disk group DATA have different number of disks.
- 断电引起的ORA-08102: 未找到索引关键字, 对象号 39故障处理
- ORA-00227: corrupt block detected in control file
- 手工删除19c rac
- 解决oracle数据文件路径有回车故障
- .wstop扩展名勒索数据库恢复
- Oracle Recovery Tools工具一键解决ORA-00376 ORA-01110故障(文件offline)
- OGG-02771 Input trail file format RELEASE 19.1 is different from previous trail file form at RELEASE 11.2.
- OGG-02246 Source redo compatibility level 19.0.0 requires trail FORMAT 12.2 or higher
- GoldenGate 19安装和打patch
- dd破坏asm磁盘头恢复
- 删除asmlib磁盘导致磁盘组故障恢复
- Kylin Linux 安装19c
- ORA-600 krse_arc_complete.4
- Oracle 19c 202410补丁(RUs+OJVM)
- ntfs MFT损坏(ntfs文件系统故障)导致oracle异常恢复
- .mkp扩展名oracle数据文件加密恢复
- 清空redo,导致ORA-27048: skgfifi: file header information is invalid
- A_H_README_TO_RECOVER勒索恢复
- 通过alert日志分析客户自行对一个数据库恢复的来龙去脉和点评
分类目录归档:Linux
linux 7(redhat,oracle linux,centos)中使用udev
慢慢的linux 7的使用人越来越多了,但是linux 7相对于5和6的版本,变动确实比较大,本文主要描写在linux 7中如何实现udev,实现设备持久化,权限和所属组的修改
linux版本
Oracle Linux Server release 7.1 [root@www.xifenfei.com ~]# uname -a Linux www.xifenfei.com 3.10.0-229.el7.x86_64 #1 SMP Fri Mar 6 04:05:24 PST 2015 x86_64 x86_64 x86_64 GNU/Linux
VMware Workstation中显示uuid需要在vmx文件中增加
disk.enableUUID = "TRUE"
查看磁盘分区
[root@www.xifenfei.com ~]# fdisk -l Disk /dev/sdb: 21.5 GB, 21474836480 bytes, 41943040 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: dos Disk identifier: 0xf60fe217 Device Boot Start End Blocks Id System /dev/sdb1 2048 2099199 1048576 83 Linux Disk /dev/sda: 42.9 GB, 42949672960 bytes, 83886080 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: dos Disk identifier: 0x000bce7c Device Boot Start End Blocks Id System /dev/sda1 2048 4204543 2101248 8e Linux LVM /dev/sda2 * 4204544 79702015 37748736 83 Linux Disk /dev/sdc: 32.2 GB, 32212254720 bytes, 62914560 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk /dev/mapper/ol-swap: 2147 MB, 2147483648 bytes, 4194304 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes
查看磁盘uuid
[root@www.xifenfei.com ~]# /usr/lib/udev/scsi_id -g -u /dev/sdb1 36000c29e91831cedbe69afe6cc08daf7 [root@www.xifenfei.com ~]# /usr/lib/udev/scsi_id -g -u /dev/sdc 36000c292495e9d9de6f21640cc7b53b9
udev绑定
[root@www.xifenfei.com ~]# more /etc/udev/rules.d/99-my-asmdevices.rules KERNEL=="sd*[!0-9]", ENV{DEVTYPE}=="disk", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d $devnode", RESULT=="36000c292495e9d9de6f21640cc7b53b9", RUN+="/bin/sh -c 'mknod /dev/xifenfei-sdc b $major $minor; chown oracle:dba /dev/xifenfei-sdc; chmod 0660 /dev/xifenfei-sdc'" KERNEL=="sd?1", SUBSYSTEM=="block", PROGRAM=="/lib/udev/scsi_id -g -u -d /dev/$parent", RESULT=="36000c29e91831cedbe69afe6cc08daf7", SYMLINK+="xifenfei-sdb1", OWNER="oracle", GROUP="dba", MODE="0660"
绑定结果
[root@www.xifenfei.com ~]# ls -l /dev/xifenfei-* lrwxrwxrwx. 1 root root 4 Aug 7 22:49 /dev/xifenfei-sdb1 -> sdb1 brw-rw----. 1 oracle dba 8, 32 Aug 7 22:36 /dev/xifenfei-sdc [root@www.xifenfei.com ~]# ls -l /dev/sdb1 brw-rw----. 1 oracle dba 8, 17 Aug 7 22:49 /dev/sdb1
udev只修改磁盘权限
[root@www.xifenfei.com ~]# fdisk /dev/sdb Welcome to fdisk (util-linux 2.23.2). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Command (m for help): n Partition type: p primary (1 primary, 0 extended, 3 free) e extended Select (default p): p Partition number (2-4, default 2): First sector (2099200-41943039, default 2099200): Using default value 2099200 Last sector, +sectors or +size{K,M,G} (2099200-41943039, default 41943039): +1G Partition 2 of type Linux and of size 1 GiB is set Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks. [root@www.xifenfei.com ~]# more /etc/udev/rules.d/99-my-asmdevices.rules KERNEL=="sd?2", SUBSYSTEM=="block", PROGRAM=="/lib/udev/scsi_id -g -u -d /dev/$parent", RESULT=="36000c29e91831cedbe69afe6cc08daf7", OWNER="oracle", GROUP="dba", MODE="0660" [root@www.xifenfei.com ~]# /sbin/udevadm trigger --type=devices --action=change [root@www.xifenfei.com ~]# ls -l /dev/sdb2 brw-rw----. 1 oracle dba 8, 18 Aug 7 23:14 /dev/sdb2
这里可以发现在linux 7中使用了两种方法绑定udev,一种是真实生成udev设备,另外一种是通过软连接实现.感谢lunar(Lunar的oracle实验室)在linux 7学习中的帮助
使用losetup实现linux普通文件做asm disk
上一篇文章《使用_asm_allow_only_raw_disks实现普通文件做asm disk》中已经介绍使用_asm_allow_only_raw_disks参数使得oracle asm可以使用文件作为asm disk,这篇文章介绍在linux中还可以通过losetup来实现文件系统模拟磁盘实现使用文件系统做asm disk的效果
通过dd构造文件
[oracle@xifenfei ~]$ mkdir /u01/oracle/oradata/asmdisk [oracle@xifenfei ~]$ dd if=/dev/zero of=/u01/oracle/oradata/asmdisk/xifenfei01.dd bs=10240k count=100 100+0 records in 100+0 records out 1048576000 bytes (1.0 GB) copied, 21.9158 seconds, 47.8 MB/s [oracle@xifenfei ~]$ dd if=/dev/zero of=/u01/oracle/oradata/asmdisk/xifenfei02.dd bs=10240k count=100 100+0 records in 100+0 records out 1048576000 bytes (1.0 GB) copied, 22.392 seconds, 46.8 MB/s [oracle@xifenfei ~]$ ls -lh /u01/oracle/oradata/asmdisk/ total 3.0G -rw-r--r-- 1 oracle oinstall 1000M Feb 27 22:58 xifenfei01.dd -rw-r--r-- 1 oracle oinstall 1000M Feb 27 23:00 xifenfei02.dd
使用losetup模拟磁盘
[root@xifenfei asmdisk]# ls -l /dev/lo log loop0 loop1 loop2 loop3 loop4 loop5 loop6 loop7 [root@xifenfei asmdisk]# losetup /dev/loop1 xifenfei01.dd [root@xifenfei asmdisk]# losetup /dev/loop2 xifenfei02.dd
使用raw实现磁盘转换为裸设备
[root@xifenfei asmdisk]# raw /dev/raw/raw10 /dev/loop1 /dev/raw/raw10: bound to major 7, minor 1 [root@xifenfei asmdisk]# raw /dev/raw/raw11 /dev/loop2 /dev/raw/raw11: bound to major 7, minor 2 [root@xifenfei asmdisk]# ls -l /dev/raw/raw1[0-1] crw------- 1 root root 162, 10 Feb 27 23:16 /dev/raw/raw10 crw------- 1 root root 162, 11 Feb 27 23:16 /dev/raw/raw11 [root@xifenfei asmdisk]# chown oracle.dba /dev/raw/raw1[0-1] [root@xifenfei asmdisk]# ls -l /dev/raw/raw1[0-1] crw------- 1 oracle dba 162, 10 Feb 27 23:16 /dev/raw/raw10 crw------- 1 oracle dba 162, 11 Feb 27 23:16 /dev/raw/raw11
创建磁盘组
[oracle@xifenfei ~]$ export ORACLE_SID=+ASM [oracle@xifenfei ~]$ sqlplus / as sysdba SQL*Plus: Release 10.2.0.4.0 - Production on Thu Feb 27 23:19:28 2014 Copyright (c) 1982, 2007, Oracle. All Rights Reserved. Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - Production With the Partitioning, OLAP, Data Mining and Real Application Testing options SQL> create diskgroup xff external redundancy disk '/dev/raw/raw10','/dev/raw/raw11'; Diskgroup created. SQL> select group_number,name from v$asm_diskgroup; GROUP_NUMBER NAME ------------ ------------------------------------------------------------ 1 DATA 2 XFF SQL> select path,TOTAL_MB from v$asm_disk where group_number=2; PATH TOTAL_MB -------------------- ---------- /dev/raw/raw11 1000 /dev/raw/raw10 1000
通过kfed验证asm disk是数据文件
[oracle@xifenfei tmp]$ kfed read /dev/raw/raw10|grep XFF kfdhdb.dskname: XFF_0000 ; 0x028: length=8 kfdhdb.grpname: XFF ; 0x048: length=3 kfdhdb.fgname: XFF_0000 ; 0x068: length=8 [oracle@xifenfei tmp]$ kfed read /dev/raw/raw11|grep XFF kfdhdb.dskname: XFF_0001 ; 0x028: length=8 kfdhdb.grpname: XFF ; 0x048: length=3 kfdhdb.fgname: XFF_0001 ; 0x068: length=8 [oracle@xifenfei tmp]$ kfed read /u01/oracle/oradata/asmdisk/xifenfei01.dd |grep XFF kfdhdb.dskname: XFF_0000 ; 0x028: length=8 kfdhdb.grpname: XFF ; 0x048: length=3 kfdhdb.fgname: XFF_0000 ; 0x068: length=8 [oracle@xifenfei tmp]$ kfed read /u01/oracle/oradata/asmdisk/xifenfei02.dd |grep XFF kfdhdb.dskname: XFF_0001 ; 0x028: length=8 kfdhdb.grpname: XFF ; 0x048: length=3 kfdhdb.fgname: XFF_0001 ; 0x068: length=8
通过kfed命令,确定asm本质是用了dd出来的数据文件做asm disk.
Linux 7 新命令之—lscpu和systemctl
redhat 7 系列发布已经有一段时间了,最近抽时间看了下官方文档,对比了一些命令,对于其中比较关注的进行了记录,本篇主要是列出来了服务的管理改进,引进了systemctl管理和一个非常方便看cpu信息的命令lscpu
系统版本
[root@em12cdb ~]# uname -a Linux em12cdb 3.8.13-55.1.6.el7uek.x86_64 #2 SMP Wed Feb 11 14:18:22 PST 2015 x86_64 x86_64 x86_64 GNU/Linux [root@em12cdb ~]# more /etc/oracle-release Oracle Linux Server release 7.1
查看cpu信息
[root@em12cdb ~]# lscpu Architecture: x86_64 CPU op-mode(s): 32-bit, 64-bit Byte Order: Little Endian CPU(s): 2 On-line CPU(s) list: 0,1 Thread(s) per core: 1 Core(s) per socket: 2 Socket(s): 1 NUMA node(s): 1 Vendor ID: GenuineIntel CPU family: 6 Model: 60 Model name: Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz Stepping: 3 CPU MHz: 3997.739 BogoMIPS: 7995.47 Hypervisor vendor: VMware Virtualization type: full L1d cache: 32K L1i cache: 32K L2 cache: 256K L3 cache: 8192K NUMA node0 CPU(s): 0,1
systemctl命令管理服务和开机启动
以前主要是通过/etc/init.d/或者service命令管理服务,通过chkconfig管理是否开机启动
--查看某个服务状态 [root@em12cdb ~]# systemctl status crond.service crond.service - Command Scheduler Loaded: loaded (/usr/lib/systemd/system/crond.service; enabled) Active: active (running) since Mon 2015-07-27 11:59:16 CST; 1 months 7 days ago Main PID: 1245 (crond) CGroup: /system.slice/crond.service └─1245 /usr/sbin/crond -n Jul 27 11:59:16 em12cdb systemd[1]: Started Command Scheduler. Jul 27 11:59:16 em12cdb crond[1245]: (CRON) INFO (RANDOM_DELAY will be scaled with factor 33% if used.) Jul 27 11:59:17 em12cdb crond[1245]: (CRON) INFO (running with inotify support) --停止某个服务 [root@em12cdb ~]# systemctl stop crond.service [root@em12cdb ~]# systemctl status crond.service crond.service - Command Scheduler Loaded: loaded (/usr/lib/systemd/system/crond.service; enabled) Active: inactive (dead) since Thu 2015-09-03 00:27:55 CST; 2s ago Main PID: 1245 (code=exited, status=0/SUCCESS) Jul 27 11:59:16 em12cdb systemd[1]: Started Command Scheduler. Jul 27 11:59:16 em12cdb crond[1245]: (CRON) INFO (RANDOM_DELAY will be scaled with factor 33% if used.) Jul 27 11:59:17 em12cdb crond[1245]: (CRON) INFO (running with inotify support) Sep 03 00:27:55 em12cdb systemd[1]: Stopping Command Scheduler... Sep 03 00:27:55 em12cdb systemd[1]: Stopped Command Scheduler. --启动某个服务 [root@em12cdb ~]# systemctl start crond.service [root@em12cdb ~]# systemctl status crond.service crond.service - Command Scheduler Loaded: loaded (/usr/lib/systemd/system/crond.service; enabled) Active: active (running) since Thu 2015-09-03 00:28:08 CST; 1s ago Main PID: 7294 (crond) CGroup: /system.slice/crond.service └─7294 /usr/sbin/crond -n Sep 03 00:28:08 em12cdb systemd[1]: Started Command Scheduler. Sep 03 00:28:08 em12cdb crond[7294]: (CRON) INFO (RANDOM_DELAY will be scaled with factor 56% if used.) Sep 03 00:28:09 em12cdb crond[7294]: (CRON) INFO (running with inotify support) Sep 03 00:28:09 em12cdb crond[7294]: (CRON) INFO (@reboot jobs will be run at computer's startup.) --重启某个服务 [root@em12cdb ~]# systemctl restart crond.service [root@em12cdb ~]# systemctl status crond.service crond.service - Command Scheduler Loaded: loaded (/usr/lib/systemd/system/crond.service; enabled) Active: active (running) since Thu 2015-09-03 00:28:24 CST; 2s ago Main PID: 7323 (crond) CGroup: /system.slice/crond.service └─7323 /usr/sbin/crond -n Sep 03 00:28:24 em12cdb systemd[1]: Starting Command Scheduler... Sep 03 00:28:24 em12cdb systemd[1]: Started Command Scheduler. Sep 03 00:28:24 em12cdb crond[7323]: (CRON) INFO (RANDOM_DELAY will be scaled with factor 61% if used.) Sep 03 00:28:24 em12cdb crond[7323]: (CRON) INFO (running with inotify support) Sep 03 00:28:24 em12cdb crond[7323]: (CRON) INFO (@reboot jobs will be run at computer's startup.) --检查某个服务是否开机启动 [root@em12cdb ~]# systemctl is-enabled crond.service enabled --禁止某个服务开机启动 [root@em12cdb ~]# systemctl disable crond.service rm '/etc/systemd/system/multi-user.target.wants/crond.service' [root@em12cdb ~]# systemctl is-enabled crond.service disabled --查看所有服务开机启动情况(这里使用了grep便于说明) [root@em12cdb ~]# systemctl list-unit-files --type service|grep cron crond.service disabled [root@em12cdb ~]# systemctl enable crond.service ln -s '/usr/lib/systemd/system/crond.service' '/etc/systemd/system/multi-user.target.wants/crond.service' [root@em12cdb ~]# systemctl list-unit-files --type service|grep cron crond.service enabled
systemctl命令修改启动模式
以前版本中,直接通过vi修改/etc/inittab文件
--多用户图形界面 [root@em12cdb ~]# systemctl get-default graphical.target --多用户字符界面 [root@em12cdb ~]# systemctl set-default multi-user.target rm '/etc/systemd/system/default.target' ln -s '/usr/lib/systemd/system/multi-user.target' '/etc/systemd/system/default.target' [root@em12cdb ~]# systemctl get-default multi-user.target