• 关注
  • 推荐
  • 嘉兴
  • 视频
  • 财经
  • 科技
  • 热点
  • 国际
  • 更多
 
搜索
34

消息

 
 

5

 
2
 

收藏

分享

db2入门必看命令清单--日常运维必需

https://www.toutiao.com/article/6773183643020952067/?source=aweme_search
原创2019-12-26 00:01·波波说运维

概述

今天主要总结一下db2数据库日常维护的一些命令,虽然目前生产环境只剩一台db2了,但毕竟还在用,所以还是得做一下日常维护的~


1、数据库的启动、停止、激活

db2 list active databases

db2 active db 数据库名

db2start --启动

db2stop [force] --停止


2、数据库的连接、断开

db2 CONNECT TO DBName [user UserID using PWD]--建立连接

db2 CONNECT reset /db2 disconnect CURRENT --断开连接

db2 terminate --断开与数据库的连接


3、实例的创建、删除

db2icrt < 实例名称 > --创建 db2 实例

db2idrop < 实例名称 >--删除 db2 实例

set db2intance=db2 --设置当前 db2 实例

db2ilist --显示 db2 拥有的实例


4、节点、数据库的编目

db2 list db directory --查看本地节点目录

db2 catalog tcpip node <node_name> remote <hostname|ip_address> <svcname|port_number> ostype <OS2|AIX|WIN95|NT|HPUX|SUN|MVS|OS400|VM|VSE|SCO|SGI|LINUX|DYNIX>--编目一个

TCP/IP节点

db2 uncatalog node <node_name> --取消节点编目

db2 catalog DATABASE <db_name> AS <db_alias> AT node <node_name>--编目数据库

db2 uncatalog DATABASE <db_name> --取消数据库编目


5、检查DB2实例是否已经启动

用ps命令查看是否有db2sysc后台进程

#ps -ef | grep db2sysc

也可以以DB2实例所有者登录,通过发出db2start命令来确保启动了实例(如果实例已经启动,则会告知SQL1026N 数据库管理器已激活;否则,将把实例启动起来)


6、 查看表空间状态是否正常

以db2实例所有者登录

db2 list tablespaces show detail //在单分区上查看表空间的状态,正常返回0x0000
db2_all list tablespaces show detail //在所有分区上查看表空间的状态

可以使用LIST TABLESPACES 命令确定连接数据库中表空间的当前状态,可以使用SHOW DETAIL选项查看表空间的详细信息。


7、 查看表的状态

查询系统目录视图以获得关于数据库的表的状态信息。例如,下面的语句将返回在 SYSCAT.TABLES 中有项的所有表的名称,以及每个表的列数和表的状态(N = 正常;C = 待审核(check pending))

#db2 select tabname, colcount, status FROM syscat.tables ORDER BY tabname


8、 查看磁盘空间

查看数据库活动日志目录是否已满,活动日志目录的位置可以使用db2 get db cfg查看,注意一定不要手工删除活动日志

#df -k

查看DMS表空间中是否还有可用页

#db2 list tablespaces show detail //在单分区上查看表空间的是否还有可用页

# db2_all list tablespaces show detail //在所有分区上查看表空间是否还有可用页


9、 检查数据库备份是否正常

请查看TSM或第三方存储管理软件,看备份映像文件是否完整的保存到了磁带机上了,想在DB2上查看备份情况,可以使用LIST命令

 # db2 list history backup all for 数据库名


10、 查看当前运行最频繁的SQL,其命中率是否正常

# db2 get snapshot for bufferpools on 数据库名 > log.txt

#db2 "select * from SYSCAT.BUFFERPOOLS" 查缓冲池大小信息

命中率计算:

(1- ((Buffer pool data physical reads + Buffer pool index physical reads) /
(Buffer pool data logical reads + Buffer pool index logical reads))) * 100%

用grep命令查看" Number of executions"执行次数最频繁的语句,看其命中率是否正常。

比如:

grep -n " Number of executions" log.txt | grep -v "= 0" | sort -k 5,5rn | more

11、 查看当前连接的应用程序,有没有非法连接

 #db2 list applications show detail

看这些连接的情况,看有没有不合适的IP连上来,或者不被允许的第三方工具连上来,比如一些第三方工具连上来会对表进行锁定,影响业务系统正常运行,这个时候可以用db2 "force application(应用程序句柄号)" 将某个单独的句柄停下来。


12、 检查有没有死锁

# db2 get snapshot for all on 数据库名 > log.txt

用grep命令查看输出的文件中是否有死锁的记录,比如

grep -n "Deadlocks detected" log.txt | grep -v "= 0" | more

13、数据库的备份、恢复

--离线备份

db2 force applications all--断开所有连接

db2 force application(h1,h2……)--杀死与数据库相连接的某个进程

db2 backup db DBName [to /backup] [use TSM]--离线备份

--在线、增量备份

--前提:更改数据库参数 logretain, userexit, trackmod 为 on,之后数据库处于backup pending状态,要完全离线备份数据库一次,之后就可以进行在线、在线增量备份了。

db2 update db cfg using logretain on userexit on trackmod on--启用相关参数

--归档路径

DB2 UPDATE DATABASE CONFIGURATION USING LOGARCHMETH1 DISK:/backup

--LOGARCHMETH1参数改成TSM

DB2 UPDATE DATABASE CONFIGURATION USING LOGARCHMETH1 TSM IMMEDIATE

db2 backup db DBName [to /backup] [use TSM]--离线备份

db2 backup db DBName online [to /backup] [use TSM] include logs --在线线备份

db2 backup db DBName online incremental [to /backup] [use TSM]--在线增量备份

--数据库恢复

db2 restore db DBname [incremental] [FROM /backup][use TSM] taken AT YYYYMMDDHHMMSS

--恢复 (时间戳记:YYYYMMDDHHMMSS)

db2 list history backup [since YYYYMMDDHHMMSS] ALL FOR DBName

--查看 [从YYYYMMDDHHMMSS] 对DBName的备份情况

db2 ROLLFORWARD DATABASE DBName TO END OF LOGS AND COMPLETE NORETRIEVE--将暂挂的数据恢复到前滚状态

db2 ROLLFORWARD DATABASE DBName TO END OF LOGS AND COMPLETE OVERFLOW LOG PATH ("/home/db2inst1/SQLOGDIR")


14、数据的导出、导入

--导出

db2 EXPORT TO D:\TableName.txt OF del SELECT * FROM SCHEMA.TableName--文本格式

db2 EXPORT TO D:\TableName.csv OF del SELECT * FROM SCHEMA.TableName--csv可转为excel

db2 EXPORT TO D:\TableName.ixf OF ixf SELECT * FROM SCHEMA.TableName

--导出数据(IXF 集成通用交换格式)

db2 EXPORT TO "D:\TableName.data" OF IXF MESSAGES "D:\TableName.msg" SELECT * FROM SCHEMA.TableName;

--导入

db2 IMPORT FROM D:\TableName.txt OF del INSERT INTO SCHEMA.TableName

db2 IMPORT FROM "D:\TableName.data" OF IXF [MESSAGES "D:\TableName.msg"] [COMMITCOUNT 1000] INSERT/CREATE INTO SCHEMA.TableName;

db2 IMPORT FROM "D:\TableName.ixf" OF IXF [COMMITCOUNT 1000] INSERT/INSERT_UPDATE/CREATE/REPLACE/REPLACE_CREATE INTO SCHEMA.TableName;


15、查看DB2日志

请至少每天查看一次db2diag.log文件,看其中是否有异常。


16、 数据库补丁级别

# db2level


觉得有用的朋友多帮忙转发哦!后面会分享更多devops和DBA方面的内容,感兴趣的朋友可以关注下~

举报
评论 2
评论
  • 博学海燕S

    数据库DB2常用命令

    回复·2020年05月05日
     
    • 博学海燕S

      su - db2instl 【切换到db2instl(实例用户)用户】 db2start 【启动实例】

      回复·2020年05月05日
       
 
 

头条热榜

换一换

  1. “用工旺”释放经济回升鲜明信号

  2. 1

    第二轮感染高峰将至?这些人要注意

  3. 2

    男子从工行取钱存农商行被认定假币

  4. 3

    全力支持外贸企业抓订单、拓市场

  5. 4

    苏炳添赛季首秀6秒59夺冠

  6. 5

    中国官宣加速退役歼7战机有何意味

  7. 6

    男子囤7冰柜养死的名贵鱼价值百万

  8. 7

    狂飙不能没有张译

  9. 8

    亚洲首富身家暴跌3400亿

  10. 9

    欧洲航天局不再派宇航员登中国天宫

  11. 10

    微信支持一个手机注册俩号了

 
  • 首页
  • 反馈
  • 顶部
 

添加今日头条到电脑桌面

------------------------------------------------------------------------------------------
如果你觉得文章有用,欢迎打赏

安装后可以在桌面快捷打开,轻松访问海量热点资讯

立即添加

 

db2入门必看命令清单--日常运维必需的更多相关文章

  1. Java编程学习知识点分享 入门必看

    Java编程学习知识点分享 入门必看 阿尔法颜色组成(alpha color component):颜色组成用来描述颜色的透明度或不透明度.阿尔法组成越高,颜色越不透明. API:应用编程接口.针对软 ...

  2. Liunx新手入门必看

    安装CentOS(Linux的一个常用发行版本,互联网公司经常使用这个发行版)用到的软件: VMware_workstation_full_12.5.2.exe 虚拟机软件,虚拟机由这个软件安装.管理 ...

  3. hadoop记录-hadoop集群日常运维命令

    hadoop集群日常运维命令 #1.namenode hadoop namenode -format #格式化,慎用 su hdfs hadoop-daemon.sh start namenode h ...

  4. Docker Swarm 日常运维命令笔记

    之前介绍了Docker管理工具-Swarm部署记录,这里简单总结下Docker Swarm的日常维护命令,以作为平时运维笔记. Swarm作为一个管理Docker集群的工具,首先需要将其部署起来,可以 ...

  5. zookeeper 用法和日常运维

    本文以ZooKeeper3.4.3版本的官方指南为基础:http://zookeeper.apache.org/doc/r3.4.3/zookeeperAdmin.html,补充一些作者运维实践中的要 ...

  6. 循序渐进DB2(第2版)——DBA系统管理、运维与应用案例

    <循序渐进DB2(第2版)——DBA系统管理.运维与应用案例> 基本信息 作者: 牛新庄    出版社:清华大学出版社 ISBN:9787302323013 上架时间:2013-7-3 出 ...

  7. mysql日常运维与参数调优

    日常运维 DBA运维工作 日常 导数据,数据修改,表结构变更 加权限,问题处理 其它 数据库选型部署,设计,监控,备份,优化等 日常运维工作: 导数据及注意事项 数据修改及注意事项 表结构变更及注意事 ...

  8. Hbase 日常运维

    日常维护的命令 1,major_compact 'testtable',通常生产环境会关闭自动major_compact(配置文件中hbase.hregion.majorcompaction设 为0) ...

  9. hadoop日常运维与升级总结

    日常运维 升级 问题处理方法 日常运维 进程管理 由于配置文件的更改,需要重启生效, 或者是进程自己因某种致命原因终止, 或者发现进程工作出现异常等情况下,需要进行手动进程的关闭或启动, 或者是增删节 ...

  10. Jenkins日常运维笔记-重启数据覆盖问题、迁移、基于java代码发版(maven构建)

    之前在公司机房部署了一套jenkins环境,现需要迁移至IDC机房服务器上,迁移过程中记录了一些细节:1)jenkins默认的主目录放在当前用户家目录路径下的.jenkins目录中.如jenkins使 ...

随机推荐

  1. 第七周作业-N67044-张铭扬

    1. 说明自动化运维的路径,原理,实践方法. 所谓自动化运维是指通过将日常IT运维中大量的重复性工作(小到简单的日常检查.配置变更和软件安装,大到整个变更流程的组织调度)由过去的手工执行转为标准化.流 ...

  2. 【4】Postman之Tests(断言)

    简介:使用postman完成请求后,验证返回结果,会用到tests断言.官方提供了很多可以直接使用的方法~ 接下来主要介绍这些方法是如何使用. 1. 变量相关: Get an environment ...

  3. 【C学习笔记】day5-3 编写代码模拟三次密码输入的场景

    3.编写代码模拟三次密码输入的场景. 最多能输入三次密码,密码正确,提示"登录成功",密码错误, 可以重新输入,最多输入三次.三次均错,则提示退出程序. #define _CRT_ ...

  4. 用到的jar包作用随笔,吼吼

    名称 版本 说明 spring spring.jar(2.5) spring基础包                   公司基础包 isskill-pro0.7.1.2.jar(0.7.1.2) 包含 ...

  5. C6657子卡模块设计资料:268-基于FMC接口的DSP TMS320C6657子卡模块

    基于FMC接口的DSP TMS320C6657子卡模块 一. 概述        FMC连接器是一种高速多pin的互连器件,广泛应用于板卡对接的设备中,特别是在xilinx公司的所有开发板中都使用.该 ...

  6. KMP 算法实现

    # coding=utf-8 def get_next_list(findding_str): # O(m) # 求一个字符串序列每个位置的最长相等前.后缀 j = 0 # 最长相等前缀的末位 nex ...

  7. 在TMOS系统中添加按键检测功能

    目录 TMOS系统中自带有按键检测轮询功能,默认100ms检测一次,在debug时很有帮助.不过在需要低功耗休眠的前提下,检测按键需要频繁唤醒,影响功耗,故多数BLE的工程都没有用到这个功能.代码贴在 ...

  8. unity 扇形范围检测目标

    第一种 代码方法 传入目标点测试即可 private float ScopeDistance = 2f;//扇形距离 private float ScopeJiaodu = 120;//扇形的角度 / ...

  9. js 防抖

    // 防抖 作用:防止重复触发事件 var count = 1; var container = document.getElementById('container'); function getU ...

  10. zzul1074_Java

    package com.ittrash;import java.util.Scanner;public class zzul1074 { public static void main(String[ ...