实现:在客户端远程连接服务器端的db2(db2之间的互连)
本文假定如下:
客户端为windows/linux/unix,客户端也已经安装了db2或者客户端
服务器端为windows/linux/unix
客户端ip:192.168.42.147,服务器端ip为192.168.42.102
步骤:
在客户端建立服务器端数据库的节点
在客户端命令行执行
Db2 catalog tcpip node test remote 192.168.42.102 server 50000
注:test为在客户端定义的节点,名字可以任意
192.168.42.102为客户端的ip
50000为DB2使用的端口
查找服务器端DB2使用的端口,
如果服务器端为linux,可以访问/etc/services文件,如果你的实例名为db2inst1,找到如下行
db2inst1 50000/tcp
如果服务器端为windows,查看X:/WINNT/System32/drivers/etc/services
绑定节点和客户端的数据库
执行下面的命令db2 catalog db coshine at node test
注:coshine为服务器端中你想要连接的数据库名
Test就是步骤一种定义的节点
使绑定生效
执行db2 terminate
设定客户端db2codepage(代码页设置)即字符编码
先在服务器端查询db2codepage,执行db2set –all
[i] DB2_EXTENDED_OPTIMIZATION=ON
[i] DB2_DISABLE_FLUSH_LOG=ON
[i] AUTOSTART=YES
[i] DB2_STRIPED_CONTAINERS=ON
[i] DB2_HASH_JOIN=Y
[i] DB2COMM=tcpip
[i] DB2CODEPAGE=819
[i] DB2_PARALLEL_IO=*
可以看到服务器端的DB2CODEPAGE为819,所以客户端也必须设置为这个数字
执行db2set db2codepage=819
进行连接
执行db2 connect to coshine user user_name using password
注释
Db2codepage:即db2数据库的编码方式
db2codepage=1386(简体中文)
db2country=86(中国)
一个数据库一旦建立,他的代码页就没有办法改,
db2set DB2CODEPAGE=1386只能改变代码页环境,不能改变数据库的代码页
如果不能连接:检查如下是否正确
确保可以ping通服务器端:ping 192.168.42.102
确保服务器端的db2已经启动:db2start
确保客户端DB2COMM设置为tcpip
先查看db2comm设置:db2set –all
如果没有设置这个注册表,执行db2set db2comm=tcpip
将SVCENAME设置成/etc/services中的端口号或者服务名了吗?
执行db2 get dbm cfg查看,找到SVCENAME,如果当前值不是服务器端的端口号或者服务名,进行更新设置
执行:db2 update dbm cfg SVCENAME db2inst1
注:db2inst1为服务名,这个在/etc/services文件中db2inst1 50000/tcp
一致
DB2数据库基本操作指令30条
2009-07-06 00:36 佚名 it168 我要评论(1) 字号:T | T
本文向您介绍DB2的30条基本操作指令,包括数据库的导入导出、查看存储过程、版本迁移等常用指令。
AD: 2013大数据全球技术峰会低价抢票中
1.查看本地节点目录
命令窗口中输入:db2 list node directory
2.编目一个TCP/IP节点
命令窗口:db2 catalog tcpip node remote server ostype
3.取消节点编目
db2 uncatalog node
4.查看系统数据库目录
db2 list database directory
5.查看本地数据库目录
db2 list database directory on <盘符>
在本地数据库目录中有而系统数据库目录中没有的数据库不能访问,可以在控制中心中选中 <数据库> 右键单击选择添加,然后输入需要添加的数据库名称或者点击刷新按钮选择数据库,加入数据库后即可以访问。
6.编目数据库
db2 catalog database as at node
7.取消数据库编目
db2 uncatalog database
8.测试远程数据库的连接
db2 connect to user using
9.任何用户均可通过设置CurrentSchema专用寄存器为特定的数据库连接设置默认模式,初始默认值为当前会话用户的权限ID。
set schema =
可以由用户交互式的使用,也可在应用程序中使用,如果用DynamicrulesBind选项绑定包,这个语句就没有作用。此语句不在事务控制之下。
10.代码页的设置
在创建数据库时设置字符集
create database using codeset territory
例: create database dbtest using codeset IBM-437 territory US
也可以设置整个数据库的代码页,在win2000/NT/xp中,在我的电脑--> 属性--> 高级--> 环境变量中添加变量DB2CODEPAGE = ,例:DB2CODEPAGE = 437 或 DB2CODEPAGE = 1386。或者在IBM DB2命令窗口输入db2set DB2CODEPAGE=1386,设置后需要重新启动DB2生效。
11.DB2低版本数据到高版本的迁移
先将低版本数据备份使用恢复功能导入高版本数据库,然后在命令窗口输入db2 migrate database 。
12.表名或模式中含有引号时访问表
命令窗口:db2 select * from \ "tabschema\ ".\ "tabname\ "
命令行处理器:db2=> select * from "tabschema ". "tabname "
13.导出数据库的表结构生成DDL文件
命令窗口:db2look -d -e -c -o
14.执行脚本文件
命令窗口:db2 -tvf
15.代码页的转换
16.获取当前DB2的版本 select * from sysibm.sysversions
17.DB2表的字段的修改限制?
只能修改VARCHAR2类型的并且只能增加不能减少
alter table alter column set data type varchar (SIZE)
18.如何查看表的结构?
describe table or describe select * from .
19.如何快速清除一个大表?
ALTER TABLE TABLE_NAME ACTIVE NOT LOGGED INITALLY WITH EMPTY TABLE
20.如何查看数据库的存储过程?
SELECT * FROM SYSCAT.PROCEDURES
21.如何查看表的约束?
SELECT * FROM SYSCAT.CHECKS WHERE TABNAME =
22.如何查看表的引用完整约束?
SELECT * FROM SYSCAT.REFERENCES WHERE TABNAME =
23.如何知道BUFFERPOOLS状况?
select * from SYSCAT.BUFFERPOOLS
24.如何在命令行下查看修改实例和数据库配置参数?
查看实例配置参数:db2 get dbm cfg
修改实例配置参数:db2 update dbm cfg using 参数名 新值
查看数据库配置参数:db2 get db cfg for
修改数据库配置参数:db2 update db cfg for using 参数名 新值
25.如何修改缓冲区?
增加缓冲区:create bufferpool size [pagesize 4096] {[not] EXTENDED STORAGE} 修改缓冲区: alter bufferpool size {[not] EXTENDED STORAGE}
删除缓冲区: drop bufferpool
如果缓冲区大小设置为 -1 表示缓冲池的页面数目由数据库配置参数buffpage决定。
注意:数据库配置参数buffpage仅对缓冲区大小设置为 -1 的缓冲池起作用。
26.多个字段时如何不通过使用select子句使用 in/not in select * from tabschema.tabname where (colA, colB, colC) [not] in (values (valueA1, valueB1, valueC1), (valueA2, valueB2, valueC2), ...(valueAn, valueBn, valueCn))
27.查看当前连接到数据库的应用
db2 list application [show detail]
28.如何确认DB2数据库的一致性
db2dart /DB /DB表示检查整个数据库的一致性
29.导出某个表的数据
export to
如:导出用户表
export to c:\user.ixf of ixf select * from user
30、导入数据
import from
如:导入用户表。导入时可以直接建立新表。如果有该表存在也可以用INSERT 插入,或者用UPDATE更新
相关推荐
### DB2学习记录 #### 一、并发机制与隔离级别 DB2的并发控制机制与Oracle存在显著区别。其中一个重要方面体现在默认隔离级别上。Oracle的默认隔离级别为快照(snapshot),这种设置使得写入事务不会阻塞读取事务,...
通过对DB2存储过程的学习,我们可以了解到它是如何在银行等场景下被高效地利用来提升系统的性能和安全性。掌握存储过程的设计和实现技巧对于数据库开发者来说至关重要。通过遵循最佳实践和不断优化存储过程,可以...
9. **存储过程的调试**:DB2提供了多种工具和方法来调试存储过程,如日志记录、跟踪和DB2控制台。理解这些工具的使用可以帮助开发者定位和修复问题。 10. **版本控制与重用**:在开发过程中,可能需要修改存储过程...
在数据库管理领域,DB2是IBM推出...总结,DB2的存储过程是数据库开发的重要工具,通过学习和实践这些存储过程实例,不仅可以掌握基本操作,还能深入理解数据库管理和编程的高级概念,为今后的数据库工作打下坚实基础。
10. **调试和日志记录**:为了便于问题排查,DB2提供了一些工具和特性,如跟踪、日志记录和调试器,帮助开发者定位存储过程中的问题。 通过阅读"DB2存储过程优化培训资料.ppt",你可以更深入地了解这些概念,并学习...
- `db2 list database directory` 显示系统中的所有数据库。 - `db2 list database directory on <盘符>` 查看指定盘符上的本地数据库,了解可访问性。 3. **数据库操作**: - `db2 catalog database as at node...
### DB2学习手册知识点概述 #### 一、DB2专有名词解释 1. **Instance(实例):** DB2中的实例是指运行DB2数据库管理系统的单一进程或一组进程。每个DB2实例都有一个唯一的名字,并且可以管理多个数据库。实例是DB2...
通过这些文件,你可以学习到DB2数据库系统中的高级特性,如存储过程的创建和使用、游标的管理、以及如何优化和调试数据库代码。了解并掌握这些知识对于提升你在DB2环境下的编程和数据库管理技能至关重要。
### DB2恢复删除表学习 #### 一、DB2中删除表恢复机制概述 在IBM DB2数据库管理系统中,为了应对误删表的情况,DB2提供了表空间级别的表恢复功能。这种功能允许用户在一定条件下恢复已被删除的表及其数据。默认...
非过程性则意味着SQL不是一种编程语言,不包含循环或复杂的条件判断,而是处理表格中的一组记录,并能嵌入到像C或COBOL这样的编程语言中,利用编程语言进行过程逻辑操作。 数据操纵语言(DML)是SQL的核心部分,...
本课件详细介绍了DB2的恢复机制,包括日志记录、检查点、事务处理和崩溃恢复等概念,帮助用户理解如何在系统故障后恢复数据库到一致状态。 四、数据库安全性(lec15_ch9数据库安全性.ppt) 在DB2中,安全性是保护...
通过本文档的学习,读者可以了解DB2数据库SQL复制的基本原理和操作流程。 #### 二、环境准备与数据库创建 1. **系统环境**: Windows XP SP3。 2. **DB2版本**: DB2 v9.1。 3. **创建数据库**: - 首先确保已经正确...
- 如何在WebSphere应用服务器中配置和管理DB2数据库连接。 以上是对DB2学习教程的主要内容概述,深入学习将涵盖每个主题的细节,包括实际操作、案例研究和问题解决技巧。通过这个全面的教程,你可以系统地掌握DB2...
学习DB2 v8数据库基础不仅包括命令行操作,还包括理解SQL语言、事务处理、存储过程、触发器、视图以及索引等概念。同时,掌握数据库设计原则,如第三范式(3NF),以及如何进行性能调优,都是成为DB2专家的必要步骤...
本文档主要总结了在首都国际机场、海口梅兰国际机场系统的开发过程中积累的DB2使用经验和心得。这些经验来源于实际项目实践,涉及DB2数据库的多种应用场景和技术细节。所处的运行环境为IBM s80机器,操作系统为AIX...
在安装 DB2 时,系统会生成安装日志,记录了安装过程中的每个步骤和错误信息。可以通过查看安装日志来了解安装过程和错误信息。 DB2 安装注意事项 在安装 DB2 时,需要注意以下几点: * 需要以操作系统 root 用户...
通过这个工具,开发人员和DBA可以高效地进行数据查询、分析和管理,而无需深入学习DB2命令行界面。 在实际使用中,你可能需要下载和安装相应的DB2 JDBC驱动(通常为db2jcc.jar和db2jcc_license_cu.jar),并将它们...