1、db2 数据库启动报错:数据库实例管理器非正常专状态关闭
:执行以下语句:
ipcs -q | grep db2inst1|awk '{print $2}'|xargs -i ipcrm -q {}
ipcs -s | grep db2inst1|awk '{print $2}'|xargs -i ipcrm -s {}
ipcs -m | grep db2inst1|awk '{print $2}'|xargs -i ipcrm -m {}
2、数据库还原出错
参考链接 :http://www.2cto.com/database/201704/626220.html
4、db2 开启联邦功能
db2 update dbm cfg using federated yes
5、数据库本地可以连接上但是远程无法连接
首先查看防火墙设置是否开放数据库端口,如果防火墙没问题这使用下面的方法
(1).查看 dbm配置的svcename,发现为空。
(2). 在etc/services下查看db2的服务名 以及端口号
cat etc/services|grep db2
(3).把查找到的服务名,更新到dbm中
db2 update dbm cfg using svcename serviceName(相应的服务名)
这样修改发现依旧连接不上,
(4).修改db2comm配置
db2set db2comm=tcp/ip
6、新建数据库nickname提示没有权限则需要切换到实例用户下执行
db2 update dbm cfg using FEDERATED YES
开启联邦权限。
7、数据库报表空间无法访问(DB2:SQL0290N 不允许访问表空间。 SQLSTAT=55039)
(1)db2 connect to dbname
(2)db2 ist tablespaces show detail
若表空间状态处于 0X0004 (停顿的独占)
可执行 select tabname from syscat.tables where tableid=50
通过所住的id号找出是哪个表
然后执行:quiesce tablespaces for table 表名 reset
执行该命令清除错误的状态
. 若表空间状态处于 0X0020 (备份暂挂)
对数据库进行backup后即可将其恢复正常
db2 backup db 数据库名 tablespace(userspace1) online include logs
如果还是无法访问则可能是因为还原目标环境磁盘空间不够了,需要扩展空间然后重新还原。
表空间状态描述:
参考链接:http://www.ibm.com/developerworks/cn/data/library/techarticles/dm-0407melnyk/index.html#ibm-pcon