热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

ASM下裸设备的路径更改是否会影响数据库的运行

通过asm来存储数据库文件,在linux下可以通过asmlib的方式来管理块设备,也可以直接使用裸设备来建立asm磁盘。在asmlib方式下,磁

通过asm来存储数据库文件,在linux下可以通过asmlib的方式来管理块设备,也可以直接使用裸设备来建立asm磁盘。在asmlib方式下,磁

通过asm来存储数据库文件,在linux下可以通过asmlib的方式来管理块设备,也可以直接使用裸设备来建立asm磁盘。在asmlib方式下,磁盘设备启动顺序和名称的改变不会影响到asm的使用,但如果直接使用裸设备会怎么样那?我们知道asm会在磁盘中存储与asm有关的元数据,通过这些元数据asm可以了解磁盘的相关信息,因此理论上裸设备名称的改变不会影响asm的正常使用。下面,通过实验来验证一下。

在CentOS 6.4下安装Oracle 11gR2(x64)

Oracle 11gR2 在VMWare虚拟机中安装步骤

Debian 下 安装 Oracle 11g XE R2

Oracle 11g从入门到精通 PDF+光盘源代码

RHEL6 ASM方式安装Oracle 11g R2

Oracle 10g 手工创建ASM数据库

Oracle 10g R2创建ASM实例Step By Step

首先看以下,裸设备的配置文件

node1

[root@node1 ~]# cat /etc/udev/rules.d/60-raw.rules # Enter raw device bindings here. # # An example would be: # ACTION=="add", KERNEL=="sda", RUN+="/bin/raw /dev/raw/raw1 %N" # to bind /dev/raw/raw1 to /dev/sda, or # ACTION=="add", ENV{MAJOR}=="8", ENV{MINOR}=="1", RUN+="/bin/raw /dev/raw/raw2 %M %m" # to bind /dev/raw/raw2 to the device with major 8, minor 1.

ACTION=="add", KERNEL=="sdb1", RUN+="/bin/raw /dev/raw/raw1 %N" ACTION=="add", KERNEL=="sdb2", RUN+="/bin/raw /dev/raw/raw2 %N" ACTION=="add", KERNEL=="sdb5", RUN+="/bin/raw /dev/raw/raw3 %N" ACTION=="add", KERNEL=="sdb6", RUN+="/bin/raw /dev/raw/raw4 %N" ACTION=="add", KERNEL=="sdb7", RUN+="/bin/raw /dev/raw/raw5 %N" ACTION=="add", KERNEL=="sdb8", RUN+="/bin/raw /dev/raw/raw6 %N" ACTION=="add", KERNEL=="sdb9", RUN+="/bin/raw /dev/raw/raw7 %N"

node2:

[root@node2 rules.d]# cat 60-raw.rules # Enter raw device bindings here. # # An example would be: # ACTION=="add", KERNEL=="sda", RUN+="/bin/raw /dev/raw/raw1 %N" # to bind /dev/raw/raw1 to /dev/sda, or # ACTION=="add", ENV{MAJOR}=="8", ENV{MINOR}=="1", RUN+="/bin/raw /dev/raw/raw2 %M %m" # to bind /dev/raw/raw2 to the device with major 8, minor 1.

ACTION=="add", KERNEL=="sdb1", RUN+="/bin/raw /dev/raw/raw1 %N" ACTION=="add", KERNEL=="sdb2", RUN+="/bin/raw /dev/raw/raw2 %N" ACTION=="add", KERNEL=="sdb5", RUN+="/bin/raw /dev/raw/raw3 %N" ACTION=="add", KERNEL=="sdb6", RUN+="/bin/raw /dev/raw/raw4 %N" ACTION=="add", KERNEL=="sdb7", RUN+="/bin/raw /dev/raw/raw5 %N" ACTION=="add", KERNEL=="sdb8", RUN+="/bin/raw /dev/raw/raw6 %N" ACTION=="add", KERNEL=="sdb9", RUN+="/bin/raw /dev/raw/raw7 %N"

asm下的磁盘信息如下:

[oracle@node1 ~]$ export ORACLE_SID=+ASM1 [oracle@node1 ~]$ sqlplus / as sysdba

SQL*Plus: Release 10.2.0.5.0 - Production on Sun Aug 31 12:55:25 2014

Copyright (c) 1982, 2010, Oracle. All Rights Reserved.

Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.5.0 - 64bit Production With the Partitioning, Real Application Clusters, OLAP, Data Mining and Real Application Testing options

SQL> col name for a30 SQL> col label for a30 SQL> col path for a30 SQL> set linesize 200 SQL> /

NAME LABEL PATH ------------------------------ ------------------------------ ------------------------------ DG1_0000 /dev/raw/raw3 DG2_0000 /dev/raw/raw4 DG3_0000 /dev/raw/raw5 DG3_0001 /dev/raw/raw6 DG4_0000 /dev/raw/raw7 /dev/raw/raw2 /dev/raw/raw1

7 rows selected.

SQL> ho ssh node2 Last login: Sat Aug 30 17:56:54 2014 from node1 [oracle@node2 ~]$ export ORACLE_SID=+ASM2 [oracle@node2 ~]$ sqlplus / as sysdba

SQL*Plus: Release 10.2.0.5.0 - Production on Sun Aug 31 12:56:38 2014

Copyright (c) 1982, 2010, Oracle. All Rights Reserved.

Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.5.0 - 64bit Production With the Partitioning, Real Application Clusters, OLAP, Data Mining and Real Application Testing options

SQL> col name for a30 SQL> col label for a30 SQL> col path for a30 SQL> set linesize 200 SQL> select name,label,path from v$asm_disk order by 1;

NAME LABEL PATH ------------------------------ ------------------------------ ------------------------------ DG1_0000 /dev/raw/raw3 DG2_0000 /dev/raw/raw4 DG3_0000 /dev/raw/raw5 DG3_0001 /dev/raw/raw6 DG4_0000 /dev/raw/raw7 /dev/raw/raw2 /dev/raw/raw1

7 rows selected.

创建测试表:

SQL> select file_name,tablespace_name from dba_data_files;

FILE_NAME TABLESPACE_NAME -------------------------------------------- ------------------------------ +DG4/easy/datafile/system.272.856543875 SYSTEM +DG4/easy/datafile/undotbs1.273.856543885 UNDOTBS1 +DG4/easy/datafile/sysaux.274.856543891 SYSAUX +DG4/easy/datafile/undotbs2.276.856543901 UNDOTBS2 +DG4/easy/datafile/users.277.856543905 USERS

SQL> create table t1 (id number,name varchar2(20)) tablespace users;

Table created.

SQL> insert into t1 values(1,111);

1 row created.

SQL> insert into t1 select * from t1;

1 row created.

SQL> /

2 rows created.

SQL> /

4 rows created.

SQL> /

8 rows created.

SQL> /

16 rows created.

SQL> /

32 rows created.

SQL> /

64 rows created.

SQL> commit;

Commit complete.

SQL> select count(*) from t1;

COUNT(*) ---------- 128

SQL> update t1 set id=rownum,name=rownum;

128 rows updated.

SQL> commit;

Commit complete.

修改裸设备的路径名称并重起集群

推荐阅读
  • 本文详细介绍如何使用Python进行配置文件的读写操作,涵盖常见的配置文件格式(如INI、JSON、TOML和YAML),并提供具体的代码示例。 ... [详细]
  • 本文介绍了一款用于自动化部署 Linux 服务的 Bash 脚本。该脚本不仅涵盖了基本的文件复制和目录创建,还处理了系统服务的配置和启动,确保在多种 Linux 发行版上都能顺利运行。 ... [详细]
  • 本文介绍如何通过更改软件源来提前体验Ubuntu 8.10,包括详细的配置步骤和相关注意事项。 ... [详细]
  • 本文介绍如何在现有网络中部署基于Linux系统的透明防火墙(网桥模式),以实现灵活的时间段控制、流量限制等功能。通过详细的步骤和配置说明,确保内部网络的安全性和稳定性。 ... [详细]
  • 本文介绍了如何在Ubuntu 16.04系统上配置Nginx服务器,以便能够通过网络访问存储在服务器上的图片资源。这解决了在网页开发中需要使用自定义在线图标的需求。 ... [详细]
  • Linux环境下配置Subclipse访问SVN+SSH仓库的方法
    本文详细介绍如何在Linux操作系统中配置Subclipse,以便通过SSH协议安全访问SVN仓库。不同于常见的Windows配置指南,本文提供了针对Linux用户的详细步骤。 ... [详细]
  • CentOS 7 磁盘与文件系统管理指南
    本文详细介绍了磁盘的基本结构、接口类型、分区管理以及文件系统格式化等内容,并提供了实际操作步骤,帮助读者更好地理解和掌握 CentOS 7 中的磁盘与文件系统管理。 ... [详细]
  • 解决U盘安装系统后无法重启的问题
    本文详细探讨了运维新手常遇到的U盘安装系统后无法正常重启的问题,提供了从问题分析到具体解决方案的完整步骤。通过理解Boot Loader的工作原理和正确配置启动项,帮助用户顺利解决问题。 ... [详细]
  • 本文详细介绍了如何通过RPM包在Linux系统(如CentOS)上安装MySQL 5.6。涵盖了检查现有安装、下载和安装RPM包、配置MySQL以及设置远程访问和开机自启动等步骤。 ... [详细]
  • 在成功安装和测试MySQL及Apache之后,接下来的步骤是安装PHP。为了确保安全性和配置的一致性,建议在安装PHP前先停止MySQL和Apache服务,并将MySQL集成到PHP中。 ... [详细]
  • CentOS 6.5 上安装 MySQL 5.7.23 的详细步骤
    本文详细介绍如何在 CentOS 6.5 系统上成功安装 MySQL 5.7.23,包括卸载旧版本、下载安装包、配置文件修改及启动服务等关键步骤。 ... [详细]
  • 阿里云ecs怎么配置php环境,阿里云ecs配置选择 ... [详细]
  • 本文详细介绍了如何在预装Ubuntu系统的笔记本电脑上安装Windows 7。针对没有光驱的情况,提供了通过USB安装的具体方法,并解决了分区、驱动器无法识别等问题。 ... [详细]
  • 本文详细介绍了如何在PHP中进行数组删除、清空等操作,并提供了在Visual Studio Code中创建PHP文件的步骤。 ... [详细]
  • 在Fedora 31上部署PostgreSQL 12
    本文详细介绍如何在Fedora 31操作系统上安装和配置PostgreSQL 12数据库。包括环境准备、安装步骤、配置优化以及安全设置,确保数据库能够稳定运行并提供高效的性能。 ... [详细]
author-avatar
yushun
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有