1.检查是否有僵尸进程
ps -emo THREAD | grep -i Z | grep -i 实例名
2.处理死锁
--第一步:查看所有死锁
db2 get snapshot for locks on <db_name>
select agent_id,tabname,lock_mode from table(snap_get_lock('<db_name>')) as aa where aa.tabname is not null;
--第二步:查看该死锁产生的进程
db2 get snapshot for application agentid ***(具体的agentid) 得到某个agentid关联的进程ID以及相关信息。
--第三步:KILL死锁
db2 "force application(agentid value)"
3.数据导出导入
导出方法:
方法1:export to d:\table1.del of del select * from 表名; 或者 export to d:\table1.ixf of ixf select * from 表名;
方法2:
db2look -D 数据库名 -E -A -L -I 数据库用户 -W 密码 -O 导出.sql [这是整库DDL导出]
db2move 数据库名 export -u 数据库用户 -p 密码 [这是整库数据导出]
导入方法:
方法1:import from d:\table1.del of del insert into 表名; 或者 import from d:\table1.ixf of ixf insert into 表名;
import from d:\table1.ixf of ixf savecount 1000 messages insert into 表名;// 其中,savecount表示完成每1000条操作,记录一次.
方法2:load from d:\table1.ixf of ixf insert into 表名; 或者 load from d:\table1.ixf of ixf replace into 表名; // 装入数据前,先删除已存在记录
load from d:\table1.ixf of ixf modified by identityignore insert into 表名; // 存在自增长字段
[注意]:使用load的性能要比import要好
方法3:无需中间文件的导入导出方法:
declare c1 cursor for select * from 表名;
load from c1 of cursor messages d:\mes.msg insert into 表名; // messages选项可以记录日志
方法4:
db2 -tvf 导出.sql -z 导入过程.log
db2 -tvd@ -f 存储过程.db2 (.db2后缀名可以任意)
方法5:
db2move 数据库名 import -io replace -u 数据库用户 -p 密码
4.查看当前活动实例
db2 get instance
5.启动/停止数据库服务
db2start / db2stop (force)
6.激活数据库实例
db2 activate database <db_name>
7.查看激活状态的数据库
db2 list active databases
8.失效数据库实例
db2 deactivate database <db_name>
9.查看数据库当前版本
db2level
10.数据库连接
断开连接但不释放资源:db2 connect reset
断开连接并释放资源:db2 terminate
连接:db2 connect to <db_name> user <user> using <pwd>
11.查看数据库配置参数
db2 list db directory
12.自动提交
db2=> update command options using C off --临时关闭自动提交
db2=> update command options using C on --临时开启自动提交
13.查看连接数据库的应用
db2 list applications
db2 list applications show detail
14.查看数据库表空间
db2pd -db <db_name> -tablespace
15.查看数据库配置
db2 get db cfg for <db_name>
16.查看配置实例参数
db2 get dbm cfg ; db2 update dbm cfg using ... ; db2 reset dbm cfg (恢复默认参数); 实例配置参数保存在 sqllib/db2systm文件中
17.查看配置DAS实例参数
db2 get admin cfg ; db2 update admin cfg using ...; db2 reset admin cfg ;
18.删除数据库
db2 drop db <db_name> (如果不能删除,尝试断开激活的连接或者重启db2)
19.删除实例
db2idrop -f 实例名 (加-f是为了删除sqllib,否则下次再建用例时会报错)
20.查看实例
db2ilist
21.系统启动自动启动实例
db2iauto -on 实例名 db2iauto -off 实例名
22.查看das用户
daslist
23.创建das实例
dasicrt 实例名
24.启停管理服务器(即das实例)
db2admin start/stop , 一个机器上如果装多个db2版本的产品, 也是共享一个das实例, 若das创建时是基于A版本的db2, A版本升级后,也要用A版本的dasupdt升级一下das实例。 若升级的是其他版本的db2, 则das可不用升级。
25.删除das用户
dasdrop 用户名
26.列出系统表
db2 list tables for system
27.列出所有用户表
db2 list tables
28.列出所有表
db2 list tables for all
29.列出特定用户表
db2 list tables for schema [user]
30.系统环境变量
DB2INSTANCE , 设置当前活动实例
31.实例参数
DFTDBPATH 设置数据库安装路径
32.创建数据库
db2 create db <db_name>
(dft_extent_sz 4
catalog tablespace managed by database using (FILE 'C:\111.dat' 2000, FILE 'C:\222.dat' 2000) extentsize 8 prefetchsize 16
temporary tablespace managed by system using ('C:\333.dat', 'C:\444.dat')
user tablespace managed by database using (FILE 'C:\555.dat' 1200 extentsize 24 prefetchsize 48)
automatic storage on path1,path2
autoresize yes
initialsize 200M
increasesize 20%
maxsize none
using codeset GBK territory CN )
automatic storage--默认设置,设置数据库为自动存储,即DMS自动存储
autoresize yes--表空间用光时,自动扩展
initialsize 200M--初始表空间大小为200MB, 每个容器100MB, 因为指定了两个path.
maxsize none--不限制表空间最大大小
using codeset=GBK territory=CN--指定数据库代码页为中文
using codeset=UTF-8 territory=US 指定代码页为unicode编码,可支持XML数据
33.创建表空间
db2 create tablespace <name> managed by automatic storage; DMS自动存储的数据库建立表空间, managed by可省略。
db2 create tbalespace <name> managed by system using () ; 未开启自动存储的数据库使用SMS方式建立表空间
db2 create tbalespace <name> managed by database using () extentsize 4; 未开启自动存储的数据库使用DMS方式建立表空间
extentsize 4--每个容器最多写入4个数据页; extentsize 4M--每个容器最多写入4M大小的数据
prefetchsize 4--从表空间预获取的数据页数量; prefetchsize 4M--预获取数据大小
34.复制一张表
db2 create table t1 like t2
35.显示表结构
db2 describe table tablename
36.执行SQL脚本
db2 -tvf scripts.sql
37.查看错误代码信息
db2 ? 10054
38.停止激活的连接
db2 force application all;
db2 "force application(***某agentid)"
39.监控DB2消耗多的SQL语句
eg:(DB_NAME=SUNDB)
db2top -d SUNDB -----查看消耗资源 按照提示按 l,出现Application Handle,找到资源消耗大的Application Handle(stat)
记下app handle。
db2pd -d SUNDB -dyn -application > /tmp/db2pd1.txt ----到处会话语句,准备进行调优
40.设置连接方式(重启才会生效,新建实例和数据库后,若不设置此项,则远程客户端无法进行连接)
db2set DB2COMM=tcpip
db2set DB2COMM=
41.建立远程编目
db2 catalog tcpip node 本地节点名称(随意取名) remote IP地址 server 端口
db2 catalog db 远程数据库名称 as 本地别名 at node 本地节点名称
db2 catalog db 本地数据库名称 on 本地数据库所在目录(可通过DB2PATH环境变量查看)
db2 uncatalog node 本地节点名称 (删除节点编码)
db2 uncatalog db 远程数据库名称 (删除数据库编目)
db2 list node directory 查看编目信息
42.查看SQL的执行计划
db2expln -d 数据库名称 -u 用户名 密码 -statement "SQL语句(不加分号)" -terminal -g
43.
数据库版本变更后,迁移实例
db2imigr (大版本变更使用,比如从V8升级到V9)
db2iupdt (小版本变更使用,比如从v8.1升级到v8.2)
44.连接实例
db2 attach to 实例名
45.断开实例
db2 detach
46.创建实例
db2icrt -p 50000(端口) -u dbfenc(这是受防护用户) dbinst(这是实例名)
db2icrt -d ... > debug.log 加上-d参数可以生成debug日志,检查实例创建失败原因
47.DAS
一个用于远程管理其他实例的特殊实例。 只有用图形工具远程控制时需要。用命令行远程控制不需要。
48.db2授权
GRANT DBADM ON DATABASE TO USER 用户名
49.自增序列
CREATE TABLE CUSTOMERS
(ID INT NOT NULL GENERATED ALWAYS AS IDENTITY(START WITH 1 INCREMENT BY 1),
NAME CHAR(10) NOT NULL DEFAULT 'NO NAME' );
或者:
CREATE TABLE SYSINFO
(ID INT NOT NULL GENERATED BY DEFAULT AS IDENTITY (START WITH 10 INCREMENT BY 10),
NAME CHAR(10) NOT NULL DEFAULT 'NO NAME' ) ---这种写法可以手工指定自增序列的值,前者只能系统指定。
alter table TAB_NAME alter column GENE_COL_NAME restart with 10; ---当前序列重置为10
50.显式控制db2不记录事务日志[当操作大量数据时使用,防止db2事务日志满]
alter table table_name activate not logged initially;
各种SQL操作
commit; ---commit之前的SQL都不记录事务日志,可以防止事务日志超限的问题,即执行大批量的数据插入等操作,commit之后事务日志恢复默认记录
51.查看数据库读写比
db2 get snapshot on databases global
列出的参数中Rows selected 就是SQL语句得到的结果集记录数A, Rows read 就是SQL语句一共扫描过的记录数B, A/B即为读写比,比例越高代表SQL语句效率越高
52.查看数据库表空间对应的缓冲池
db2pd -d 数据库名称 -tab
得到的结果中,Name列即为表空间名称,Id列即为表空间对应的缓冲池标识符
53.查看缓冲池使用命中率
db2pd -d 数据库名称 -buff
得到结果中,可以查看缓冲池的信息,包括总大小,命中率。 PageSz列即为每数据页的大小,单位为Byte,PA-NumPgs即为缓冲区占用的数据页数, 两者相乘即为缓冲区大小。
HitRatio列即为命中率,即查询的SQL有多少能直接在缓冲区中立即使用。
- nginx日常维护常用命令
http://www.jb51.net/article/47750.htm 一.简明nginx常用命令 1. 启动 Nginx poechant@ubuntu:sudo ./sbin/nginx 2. ...
- linux系统日常维护常用命令
环境: OS:Red Hat Linux As 5 1.find 11.查找当前目录以及子目录下包含ORA字符的文件 find . -type f|xargs grep "ORA&qu ...
- DB2日常维护——REORG TABLE命令优化数据库性能(转)
[转]DB2日常维护——REORG TABLE命令优化数据库性能 一个完整的日常维护规范可以帮助 DBA 理顺每天需要的操作,以便更好的监控和维护数据库,保证数据库的正常.安全.高效运行,防止一些错误 ...
- db2日常维护
一. DB2日常维护操作 1.数据库的启动.停止.激活 db2 list active databases db2 active db 数据库名 db2start --启动 db2stop [forc ...
- Linux系统管理和维护常用命令
Linux系统管理和维护常用命令 ls 命令 功能说明 ls 命令显示指定工作目录下的内容,列出工作目录所包含的文件及子目录. 语法结构: ls [选项] [路径或文件] ls 选项及说明 -a 显示 ...
- DB2日常维护——REORG TABLE命令优化数据库性能
一个完整的日常维护规范可以帮助 DBA 理顺每天需要的操作,以便更好的监控和维护数据库,保证数据库的正常.安全.高效运行,防止一些错误重复发生. 由于DB2使用CBO作为数据库的优化器,数据库对象的状 ...
- Oracle以及SDE维护常用命令-查看表空间等
之前现场反馈一个数据更新的问题,查看感觉是因为表空间满了导致的(错误在之前的博客随笔中写过),因此远程对服务器进行查看.个人平常都是通过Oracle客户端的Entreprise Manager Con ...
- mongodb维护常用命令
一,用户操作:1. #进入数据库adminuse admin2. #增加或修改用户密码db.addUser('name','pwd')3. #查看用户列表db.system.users.find()4 ...
- linux 学习随笔-系统日常管理常用命令
1:W 查看系统整体负载,无法查看具体负载,比如内存,磁盘 23:25:20 up 13 min, 2 users, load average: 0.00, 0.01, 0.01 USER ...
随机推荐
- myhabits where in foreach
myhabits传入参数:类,其中类中包含字符串数组String[] 当查询where in String[]时 <select id="selectData" parame ...
- JS-给对象动态添加属性
var obj = {};//用来存放获取到所填写的信息 btn.onclick = function(){ var city = input_city.value; var num = input_ ...
- Codeforces Round #552 (Div. 3) F题
题目网址:http://codeforces.com/contest/1154/problem/F 题目大意:给出n,m,k,n是物体的个数,m是优惠方式的种数,k是需要购买的物体个数, 然后给出n个 ...
- pythone函数基础(15)接口开发初识
导入需要的第三方模块 import flaskimport toolsimport json,redisimport random server = flask.Flask(__name__)#新建一 ...
- 随机获得id的方法
public String generateUUID() { String uuid = UUID.randomUUID().toString(); uuid = uuid.replace(" ...
- python json.dumps()函数输出json格式,使用indent参数对json数据格式化输出
在python中,要输出json格式,需要对json数据进行编码,要用到函数:json.dumps json.dumps() :是对数据进行编码 #coding=gbkimport json dict ...
- P2880 [USACO07JAN]平衡的阵容Balanced Lineup(RMQ的倍增模板)
题面:P2880 [USACO07JAN]平衡的阵容Balanced Lineup RMQ问题:给定一个长度为N的区间,M个询问,每次询问Li到Ri这段区间元素的最大值/最小值. RMQ的高级写法一般 ...
- 2017沈阳站 Tree
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6228 Tree Time Limit: 2000/1000 MS (Java/Others) M ...
- Lucene学习笔记:基础
Lucence是Apache的一个全文检索引擎工具包.可以将采集的数据存储到索引库中,然后在根据查询条件从索引库中取出结果.索引库可以存在内存中或者存在硬盘上. 本文主要是参考了这篇博客进行学习的,原 ...
- vue框架中的日期组件转换为yyy-mm-dd格式
最近在用vue框架写一个app,这个是用到的日期格式转换,把下面的标准格式转换为字符串连接格式