HACMP环境下db2数据库DMS表空间扩容

摘要:

常见的db2数据库的主备环境有两种方式,第一种是数据库自带的HADR,另一种则是更常见的IBM Aix系统带的HACMP。

在HACMP主备模式下,如果db2数据库使用了SMS(系统管理)表空间,或者DMS(数据库管理)表空间但容器类型为file,那么表空间的扩容与非HACMP下的扩容方式一致。目前接触的金融行业中,常见的表空间为DMS且容器类型为device,即表空间的容器直接使用裸设备(非文件)。因此下文主要介绍HACMP模式下DMS表空间裸设备扩容方式。

1. 首先确认需要扩容的表空间

▼▼▼db2 "select substr(tbsp_name,1,20) as TABLESPACE_NAME,tbsp_total_size_kb/1024 as TOTAL_MB,
tbsp_used_size_kb/1024 as USED_MB,tbsp_free_size_kb/1024 as FREE_MB,tbsp_page_size AS PAGE_SIZE,tbsp_utilization_percent,dbpartitionnum from sysibmadm.tbsp_utilization order by tbsp_utilization_percent with ur"

HACMP环境下db2数据库DMS表空间扩容
HACMP环境下db2数据库DMS表空间扩容

 例:确认表空间USERSPACE1需要扩容。

2. 查询表空间当前的容器db2pd -d db_name –tablespace

HACMP环境下db2数据库DMS表空间扩容
HACMP环境下db2数据库DMS表空间扩容

当前测试环境为使用文件系统的自动管理下的自动扩容表空间。

实际hacmp环境下的db2数据库使用的表空间多为非自动扩展的裸设备,且扩容时若表空间有多个容器,建议对最后一个容器扩容(否则会导致表空间容器之间的banlance,极大影响数据库性能),举例如下(lv_name):/dev/rdb2iv11_data

注意事项:如上图,若表空间类型为Regular,则注意总容量上限为16777216个页大小。

3. 检查当前lv属于哪个vg卷组
lslv -L lv_name

(以“/dev/rdb2iv11_data”为例,lv_name为“db2iv11_data”,去掉前面的“/dev/r”)

HACMP环境下db2数据库DMS表空间扩容
HACMP环境下db2数据库DMS表空间扩容

4. 检查当前vg卷组剩余空间
lsvg -L vg_name

HACMP环境下db2数据库DMS表空间扩容
HACMP环境下db2数据库DMS表空间扩容

当前VG db2nodevg的pp size为256MB,pp size即扩容的最小单位大小。当前剩余可扩容数量为1381个,即:1381*256M=353536M(350G)

若空间剩余满足需求,则继续;

若空间剩余不能满足需求,请联系主机和存储工程师加盘。

5. 扩容逻辑卷lv(root用户下)首先确认需要扩容多少空间;

例如扩容20G,上一步查询到PP SIZE 为256MB,则需要扩容的数量为 20*1024/256=80

则扩容(此处需特别注意与非ha模式下的区别):

_CSPOC_CALLED_FROM_SMIT=true _CSPOC_MODE=both /usr/es/sbin/cluster/sbin/cl_extendlv db2iv11_data 80

若遇到以下错误(lv最大可使用的逻辑分区数不足):

0516-787 extendlv: Maximum allocation for logical volume db2iv11_data

则先修改lv的属性,再重新执行扩容lv:

_CSPOC_CALLED_FROM_SMIT=true _CSPOC_MODE=both /usr/es/sbin/cluster/sbin/cl_chlv -x’5120′ db2iv11_data

6. 扩容表空间db2 “alter tablespace tablespace_name extend(device ‘lv_name’ size)”

例如:

db2 “alter tablespace usertablespace1 extend(device ‘/dev/rdb2iv11_data’ 20G)”

7. 确认表空间扩容完成

再次检查使用率及表空间桩体,确认表空间扩容完成

db2 “select substr(tbsp_name,1,20) as TABLESPACE_NAME,tbsp_total_size_kb/1024 as TOTAL_MB,

tbsp_used_size_kb/1024 as USED_MB,tbsp_free_size_kb/1024 as FREE_MB,tbsp_page_size AS PAGE_SIZE,tbsp_utilization_percent,dbpartitionnum from sysibmadm.tbsp_utilization order by tbsp_utilization_percent with ur”

确认表空间状态均为0x00000000:

db2 list tablespaces | grep State

来源:IT那活儿,本文观点不代表自营销立场,网址:https://www.zyxiao.com/p/136086

发表评论

登录后才能评论
服务中心
服务中心
联系客服
联系客服
侵权联系 投诉举报
返回顶部
河南,挺住!郑州,挺住!一起为他们加油!!