1.添加共享存储
此文档不演示存储配置过程。
2.配置多路径
2.1查看共享磁盘的scsi_id
/usr/lib/udev/scsi_id -g -u -d /dev/sdd 245c5c9be46f1254a
2.2查看并配置 multipath 多路径配置文件
##将以下配置,添加到/etc/multipath.conf文件中,注意区分别名 alias vi /etc/multipath.conf multipath { wwid "245c5c9be46f1254a" alias asm_data1 }
2.3激活多路径
##启用多路径 systemctl enable multipathd.service ##启动多路径 systemctl start multipathd.service ##显示多路径拓扑(maximum info) ##显示来自 sysfs 、设备映射器以及系统中其他所有可用组件的当前多路径配置状态 ##显示multipath聚合后的设备名,以及设备对应的链路情况 multipath -ll
2.4再次查看磁盘
##磁盘名称与多路径中配置的一样 lsblk
3.配置 UDEV 规则
3.1配置UDEV绑盘信息
##方法1:vi编辑添加
cd /etc/udev/rules.d vi /etc/udev/rules.d/99-oracle-asmdevices.rules KERNEL=="dm-*",ENV{DM_UUID}=="mpath-245c5c9be46f1254a",SYMLINK+="asm_data1",OWNER="grid",GROUP="asmadmin",MODE="0660"
##方法2:<<>>追加一行UDEV配置
cat <<EOF>> /etc/udev/rules.d/99-oracle-asmdevices.rules KERNEL=="dm-*",ENV{DM_UUID}=="mpath-245c5c9be46f1254a",SYMLINK+="asm_data1",OWNER="grid",GROUP="asmadmin",MODE="0660" EOF
3.2重载udev
##控制udev的守护进程,重新加载规则文件 udevadm control --reload-rules ##从内核请求(触发)一个特殊设备的事件,被触发的事件,默认是change udevadm trigger --type=devices ##以上命令也可以写成这样 udevadm trigger --type=devices --action=change
3.3验证新添加的磁盘
# ll /dev/asm* lrwxrwxrwx 1 root root 4 Aug 27 16:33 /dev/asm_archive -> dm-5 lrwxrwxrwx 1 root root 4 Aug 27 16:27 /dev/asm_data -> dm-3 lrwxrwxrwx 1 root root 4 Aug 27 16:33 /dev/asm_data1 -> dm-4 lrwxrwxrwx 1 root root 4 Aug 27 16:33 /dev/asm_ocr -> dm-2 # ll /dev/dm* brw-rw---- 1 root disk 253, 0 Aug 27 11:11 /dev/dm-0 brw-rw---- 1 root disk 253, 1 Aug 27 11:11 /dev/dm-1 brw-rw---- 1 grid asmadmin 253, 2 Aug 27 16:35 /dev/dm-2 brw-rw---- 1 grid asmadmin 253, 3 Aug 27 16:35 /dev/dm-3 brw-rw---- 1 grid asmadmin 253, 4 Aug 27 16:35 /dev/dm-4 brw-rw---- 1 grid asmadmin 253, 5 Aug 27 16:35 /dev/dm-5 crw-rw----+ 1 root audio 14, 9 Aug 27 11:11 /dev/dmmidi
3.4查看磁盘情况
fdisk -l1.
4.ASM磁盘组扩容
4.1查看集群状态
su - root ##find是为查找crsctl命令所有目录方便复制执行 find / -name crsctl /u01/app/19.3.0/grid/bin/crsctl ##查询集群状态 /u01/app/19.3.0/grid/bin/crsctl stat res -t
4.2查看网络状态
##显示网络设备的运行状态 ip a ##显示网络状态 netstat -in
4.3查看数据库状态
$ su - oracle $ ps -ef | grep ora_ ##监听状态 $ lsnrctl status ##查看oracle进程的 LOCAL 的连接数量,wc -l $ ps -ef |grep LOCAL $ ps -ef |grep LOCAL |wc -l $ sqlplus /as sysdba select instance_name, status, database_status from v$instance;
4.4查看ASM磁盘、磁盘组或表空间容量
登录数据库查看
su - oracle sqlplus / as sysasm set line 200 col path for a50 ##查看ASM磁盘,是否识别到未添加的磁盘 select name,path,state,mount_status,header_status from v$asm_disk;
##查看ASM磁盘组使用情况 select name,state,type,total_mb,free_mb from v$asm_diskgroup;
登录ASM查看
##查看数据库磁盘使用情况-方法1 $ su - grid $ asmcmd lsdg $ asmcmd lsdsk -p -k --candidate $ exit
##查看数据库磁盘使用情况-方法2 $ asmcmd ##列出磁盘组及其信息 ASMCMD> lsdg ##列出Oracle ASM磁盘 ASMCMD> lsdsk -p -k --candidate ASMCMD> exit
4.5备份megadata(添加前备份)
ASMCMD> help md_backup
##backup文件夹的权限应是 755 grid oinstall ##backup20220826_before 是具体的备份文件命名 su - grid $ asmcmd ASMCMD> md_backup /tmp/backup/dgbackup20201130_before
4.6扩容DATA磁盘组
su - grid sqlplus / as sysasm ##新增磁盘加入到磁盘组DATA ##测试环境,磁盘资源有限,这里使用 外部冗余(external redundancy) ##这种冗余方式下,Oracle不管理镜像,功能由外部存储系统实现,比如通过RAID技术; ##有效磁盘空间是所有磁盘设备空间的大小之和。 alter diskgroup DATA add disk '/dev/asm_data1' rebalance power 5;
注:rebalance power的级别从1到11中选择一个数值;数值越大,rebalance速度越快,对现有运行系统影响也越大。需要根据当时业务权衡选择适合的级别;
4.7平衡磁盘
##监控磁盘组平衡情况 ##直到查询结果是no rows selected,表示rebalance已经完成。 select * from v$asm_operation;
4.8设置磁盘组POWER值为“1”
alter diskgroup DATA rebalance power 1;1.
4.9验证磁盘组状态
su - grid sqlplus / as sysasm select name,state,type,total_mb,free_mb from v$asm_diskgroup; exit
$ asmcmd ASMCMD >lsdsk -G DATA -k -p ASMCMD >lsdg ASMCMD >quit
添加完成。
4.10备份megadata(添加后备份)
##backup文件夹的权限应是 755 grid oinstall ##backup20220826_after 是具体的备份文件命名 su - grid $ asmcmd ASMCMD> md_backup /tmp/backup/dgbackup20201130_after
4.11检查数据库运行状态
# cat /var/log/message # crsctl stat res -t ##查看日志 $ cat listener.log $ cat ocssd.log $ cat crsd.log
5.快速新增磁盘组ARCHIVE
vi /etc/multipath.conf multipath { wwid "28e81ce897af2f1e4" alias asm_data1 } systemctl enable multipathd.service systemctl start multipathd.service multipath -ll vi 99-oracle-asmdevices.rules KERNEL=="dm-*",ENV{DM_UUID}=="mpath-28e81ce897af2f1e4",SYMLINK+="asm_archive",OWNER="grid",GROUP="asmadmin",MODE="0660" udevadm control --reload-rules udevadm trigger --type=devices ll /dev/asm* ll /dev/dm* md_backup /tmp/backup/dgbackup20201130_before create diskgroup archive external redundancy disk '/dev/asm_archive'; alter diskgroup ARCHIVE rebalance power 5; select * from v$asm_operation; alter diskgroup DATA rebalance power 1; select name,state,type,total_mb,free_mb from v$asm_diskgroup; md_backup /tmp/backup/dgbackup20201130_after
发表评论