如何远程连接DB2数据库,并批量导出数据库信息

Excalibur0 2012-12-31

前提介绍:计算机A、B(A/B在同一局域网),计算机B上装有linux操作系统,linux系统上装有DB2数据库。

目的:计算机A通过FTP连接到B上linux下的DB2数据库,将数据库表结构和数据批量导出。

操作过程:

一、计算机A、B和linux的连接

1.首先要保证这三个机器的ip要在同一网段,这里A和B为局域网中自动获取,所以要先设置linux的ip为自动获取获取设定为和A/B在同一ip段,这里是设置为自动获取的。

修改配置文件:/etc/network/interfaces

ifaceeth0inetmanual/static

修改为

ifaceeth0inetdhcp

2.选择虚拟机网络连接为桥接方式,网卡根据情况选择(本地、无线、回环网卡),我这里是无线局域网,所以选择无线网卡。

二、连接并操作DB2数据库

1.远程登录linux(注:现获取linux的ip,这里为192.168.0.112)

ip:192.168.0.112

username:root

password:test

2.登录DB2

(注:DB2与oracle不一样,它没有独立的用户管理系统,必须借用OS用户来提供安全性认证,所以这里需要在创建实例之前先创建LINUX用户和组。

一共创建了3个组,每个组一个用户。其作用和含义分别是:

管理实例的用户db2inst1组名:db2iadm1

受防护用户db2fenc1组名:db2fadm1

数据库管理服务器DAS用户dasusr1组名:dasadm1

其中管理实例的用户db2inst1是最常用的,我们为它设置口令db2,所以这里要切换用户到db2inst1)

cd/opt/ibm/db2/V9.7/bin

su-db2inst1

3.连接数据库:db2connecttodatabaseuserusernameusingpassword

4.导出数据库表结构和数据

导出表结构:db2look-ddbname-e-a-x-iusername-wpassword-otest.sql

导出表数据:建立一个目录db_test;

cd进入该目录;

db2movedbnameexport–uuser–ppassword;

4.导入数据库表结构和数据

导入表结构:db2-tvfdb2look.sql创建表

在目标机建立一个目录test,将导出的数据库表结构和数据信息放到该目录下,cd进入:db2movedbnameimport–uuser–ppassword

或者db2movedbnameload加载数据

(注:import和load各有优点:

1>import方式导入时,无需建表,建立一个数据库即可;load则需要先建立数据库表;

2>import方式只能导入“普通”的表,如果表中存在自增长的IDENTITY列,那么使用db2moveimport时,会出错,这是因为,如果IDENTITY列创建表的时候都是定义成always的话,那么在导入数据的时候该列数据是不能被赋值的,而是应该由系统生成,使用db2move无法导入这样的表。对于这种含有IDENTITY列的表,使用load方式进行数据导入。)

相关推荐

lightlanguage / 0评论 2020-04-22
leiyanglove / 0评论 2010-06-21
yindusu / 0评论 2011-04-20