AIX系统上DB2数据导入LINUX系统的实现
- 格式:docx
- 大小:15.48 KB
- 文档页数:2
AIX环境下实现DB2向Windows 2000迁移DB2数据库实现从AIX系统向Win2000迁移◆1、Win下打开DB2 CLP,连接到AIX上数据库(ZJGL)db2 connect to zjgl user zjgl using zjgl◆2、用db2look导出建库表的SQL脚本。
db2 db2look -d 数据库 -i 用户 -w 密码 -e -c -o c:zjgllook.sql;不指定路径,默认保存在..SQLLIBin下更改zjgllook.sql脚本,更改连接数据库名,去掉IN \\\INDEX IN \\\和IN \\\内容,把脚本中数据库名两边双引号去掉。
◆3、在Win下DB2建立数据库ZJDEP,采用AIX上ZJGL的脚本保存未zjdep.sqlCREATE DATABASE zjdep ON 'd:' ALIAS zjdepUSING CODESET ISO8859-1 TERRITORY USCOLLATE USING Compatibility NUMSEGS 1 DFT_EXTENT_SZ 32CATALOG TABLESPACE MANAGED BY SYSTEM USING('d:db2NODE0000SQL00001SQLT0000.0' )EXTENTSIZE 32 PREFETCHSIZE 32 OVERHEAD 24.10TRANSFERRATE 0.90USER TABLESPACE MANAGED BY SYSTEM USING('d:db2NODE0000SQL00001SQLT0002.0' )EXTENTSIZE 32 PREFETCHSIZE 32 OVERHEAD 24.10 TRANSFERRATE 0.90TEMPORARY TABLESPACE MANAGED BY SYSTEM USING('d:db2NODE0000SQL00001SQLT0001.0' )EXTENTSIZE 32 PREFETCHSIZE 32 OVERHEAD 24.10 TRANSFERRATE 0.90; ◆4、在DB2 CLP下执行:db2 connect to zjdep而后执行:db2 -tvf d:zjgllook.sql (在批处理中执行DB2的SQL脚本文件)DB2跨平台备份与恢复跨平台一、DB29.1 For AIX操作系统数据库跨平台迁移至DB29.1 For Windows操作系统的方法由于跨平台进行数据库的备份,因此需要使用db2move和db2look命令,对不同平台的DB2数据进行转移.首先在AIX操作系统下,进行数据库的备份.运行db2命令窗口db2cmd 运行db2命令,进入命令行处理器界面,在此界面下,可以执行db2的日常命令.Db2->Db2move nc5011 exportDb2look �Cd nc5011 �Ca �Ce �Cx �Co create.sql…………数据库备份后,会生成上述文件.重构数据库时,如果想修改表的SCHEMA和TABLESPACE,可以直接修改create.sql文件中tablespace脚本和db2move.lst文件中的schema脚本, 即修改示例中的db2admin为指定的schema即可。
DB2 ESE V9.7文本方式安装主要流程:(1)解压安装包,检查安装先决条件(2)执行安装程序(3)注册license(Express-C版无需注册)(4)创建3个用户组和3个用户,分别是实例用户、受限用户、管理用户(5)创建一个管理服务器(6)创建一个实例(7)配置DB2访问协议(8)配置DB2实例默认端口号一、安装前准备工作1、将下载的安装文件上传到待安装的LINUX 机器,解压缩v9.7_linuxx64_server.tar.gz 文件到某个目录[root@redflag11012601 app]# ll v*gz-rw-r--r-- 1 root root 810576392 05-03 19:44 v9.7_linuxx64_server.tar.gz[root@redflag11012601 app]# tar xzf v9.7_linuxx64_server.tar.gz2、解压产生两个目录server和db2[root@redflag11012601 app]# cd server[root@redflag11012601 server]# ll总计 64drwxr-xr-x 6 bin bin 4096 2009-11-16 db2-r-xr-xr-x 1 bin bin 5340 2009-11-16 db2ckupgrade-r-xr-xr-x 1 bin bin 5293 2009-11-16 db2_deinstall-r-xr-xr-x 1 bin bin 5163 2009-11-16 db2_install-r-xr-xr-x 1 bin bin 5127 2009-11-16 db2ls-r-xr-xr-x 1 bin bin 5145 2009-11-16 db2prereqcheck-r-xr-xr-x 1 bin bin 5145 2009-11-16 db2setupdrwxr-xr-x 15 bin bin 4096 2009-11-16 doc-r-xr-xr-x 1 bin bin 5181 2009-11-16 installFixPackserver 的子目录有多个可执行的脚本,其中db2prereqcheck是先决条件检查,db2setup 是图形界面安装程序,db2_install是命令行方式安装。
linux之间实现db2异机备份还原总结数据库备份还原测试:思路:将数据库服务器(32.74.4.125)中数据库(bras)备份到归档服务器(32.74.4.123)上--说明:准确的说是备份到挂载在归档服务器(32.74.4.123)上的归档设备上,归档设备的挂载点为/mnt/efile步骤:一. 实现共享服务由于数据库服务器和归档服务器都是linux系统故而使用nfs共享将归档服务器当作nfs共享服务器端(server),数据库服务器作为客户端(client)1. nfs共享服务器端配置:1> 配置文件/etc/exports --测试成功20101112使用vi /etc/exports在其中添加/mnt/efile/dbbak 32.74.4.*(rw,sync,no_root_squash)解释:表示共享服务器上的/mnt/efile/dbbak目录只有符合32.74.4.xxx 的主机可以访问ro: 只读权限rw: 读写权限sync:资料同步写入到内存与硬盘中async:资料会先暂存与内存中,而非直接写入硬盘root_squash:客户机用root用户访问该共享文件夹时,将root用户映射成匿名用户no_root_squash:客户机用root用户访问该共享文件夹时,不映射root用户all_squash:客户机任何用户访问该共享文件夹时,将映射成匿名用户insecure:允许从这台机器过来的非授权访问anonuid:将客户机上的用户映射成指定的本地用户ID的用户anongid:将客户机上的用户映射成属于指定的本地用户组ID2> 启动nfs后又修改了/etc/exports,不用重启该服务,使用exports命令即可:exports [-aruv]-a: 全部mount或umount文件/etc/exports中的内容-r: 重新mount文件/etc/exports中的共享内容-u: umount目录-v: 在export的时候,将详细的信息输出到屏幕上2. 客户端配置1. 挂载共享目录: --测试成功20101112mount -t nfs -o rw 32.74.4.123:/mnt/efile/dbbak /mnt/dbbak2. 实现客户机开机自动挂载服务器的共享目录--测试失败20101112-20101116方法1:修改/etc/fstab文件,格式如下:32.74.4.123:/mnt/efile/dbbak /mnt/dbbak nfs defaults 0 2fs_spec fs_file fs_type fs_options fs_dump fs_passfs_spec:定义希望加载的文件系统所在的设备或远程文件系统,对于nfs则设为IP:/共享目录fs_file:本地挂载点fs_type:挂载类型fs_options:挂载参数fs_dump:该选项被dump命令使用来检查一个文件系统该以多块频率进行转储,若不需转储即为0fs_pass:该字段被fsck命令使用来决定在启动时需要被扫描的文件系统的顺序,跟文件系统“/”对应该字段值为1,其他文件体统为2,若该文件系统无需在启动时被扫描即为0方法2: --测试失败20101112-20101116修改/etc/rc.local文件,添加如下语句:mount -t nfs -o rw 32.74.4.123:/mnt/efile/dbbak /mnt/dbbak方法3: --测试成功20101116在/etc/profile文件中添加如下语句:mount -t nfs -o rw 32.74.4.123:/mnt/efile/dbbak /mnt/dbbak1> 修改/etc/rc.local文件,添加如下语句:--测试成功20101116mount -t nfs -o rw 32.74.4.123:/mnt/efile/dbbak /mnt/dbbak2> 编写shell脚本/mnt/mount123.sh,内容如下:--测试成功20101116mount -t nfs -o rw 32.74.4.123:/mnt/efile/dbbak /mnt/dbbak 修改/etc/rc.local文件,添加如下语句:/mnt/mount123.sh如果这样还自动挂载失败的话,可以执行如下语句,为/etc/rc.local添加一个链接ln -sf /etc/rc.local /etc/rc3.d/S99local--说明:1. 方法1和方法2在测试的时候都是失败的,不过我在VMware虚拟机(Ubuntu10.04)上使用方法1和方法2则是成功的,而在Red Hat Enterprise Linux Server release 5.3上边则失败。
Linux系统下安装DB2数据库一、创建用户组和用户说明:步骤1 以root用户登录需要安装DB2的服务器。
步骤2 创建用户组和用户。
# groupadd db2grp# groupadd db2fgrp# groupadd dasadm# useradd -m -g db2grp -d /home/db2inst -s /bin/bash db2inst# useradd -m -g db2fgrp -d /home/db2fenc -s /bin/bash db2fenc# useradd -m -g dasadm -d /home/dasusr -s /bin/bash dasusr步骤3 执行如下命令分别设置db2inst、db2fenc和dasusr用户密码。
# passwd db2instNew password:db2instRe-enter new password:db2instPassword changed# passwd db2fenc……# passwd dasusr……以上输入的用户密码仅作为示例,实际安装时请统一规划用户密码。
----结束二、安装DB2数据库1、获取并解压安装包步骤1 以root用户登陆需要安装DB2的Linux服务器。
步骤2 创建DB2安装包存放目录# mkdir /home/db2install步骤3 将DB2安装包DB2_ESE_97_Linux_x86-64.tar.gz拷贝到上一步骤创建的目录下。
步骤4 解压DB2安装包DB2_ESE_97_Linux_x86-64.tar.gz。
# tar–zxvf DB2_ESE_97_Linux_x86-64.tar.gz解压后将在/home/db2install目录下生成目录ese----结束2、安装DB2数据库步骤1 先安装Xmanager,安装完毕后双击Xmanager – Passive (电脑右下角启动一个小风车的图标)步骤2用SecureCRT工具以root用户登录需要安装DB2的服务器,# export DISPLAY=32.55.129.26:0.0 ---- (此IP地址为自己电脑机器的IP地址)步骤3 进入目录/home/db2install/ese。
linux下安装DB2的详细步骤安装前准备:DB2 10.1的版本需要在Linux5以上版本,核心要求2.6.16以上。
可以通过lsb_release –a和uname –a命令查看系统版本和核心版本。
/etc/redhat-release文件中描述了系统的版本信息。
第一步在IBM网站下载,下载db2数据包,目前我下载的是db2_v1012_linuxia32_expc_lite.tar.gz第二步把下载下来的包(名称有可能是:db2_v1012_linuxia32_expc_lite.tar.gz)通过FTP放进opt目录第三步用命令解压db2_v1012_linuxia32_expc_lite.tar.gz如下:#cd /opt#gunzip db2_v1012_linuxia32_expc_lite.tar.gz# tar -xvf db2_v1012_linuxia32_expc_lite.tar第四步解压以后会有目录名如:tar -xvf DB2_V81_PE_LNX_32_NLV,点击进去以后,可以看到有三个文件,其它一个是用指令(db2_install)安装,另一个是图片介面(db2setup)切换到/opt/devinst/db2_v101fp2/linuxia32/s121127/expc_lite/,用指令如下:#cd /opt/devinst/db2_v101fp2/linuxia32/s121127/expc_lite/#sh db2_install稍后会出现如果提示:DB2.ADMCL DB2 Administration Client for LINUX26DB2.ESE DB2 Enterprise Server Edition for LINUX26DB2.ADCL DB2 Application Development Client for LINUX26 然后进行选择,选择时一定要用大写如果选择:DB2.ESE这时它自己会执行所有文件,执行完以后在:/opt目录里面会出现:IBM表示安装已经完毕接下来,我们要创建实例和创建数据库第五步(注册license)要注册license不然到时没法创建数据库,license在哪里你要自己去找一下,一般情况会出现在这里:/home/db/db2/V10.1/adm/db2licm/opt/devinst/db2_v101fp2/linuxia32/s121127/expc_lite/db2/license/ db2expc_uw.lic然后在root用户下执行#/home/db/db2/V10.1/adm/db2licm –a/opt/devinst/db2_v101fp2/linuxia32/s121127/expc_lite/db2/license/db 2expc_uw.lic第六步创建用户组和用户# groupadd -g 901 db2grp# groupadd -g 902 db2fgrp# groupadd -g 903 db2agrp# useradd -g db2grp -u 801 -d /home/db2inst1 -m -s /bin/sh db2inst1# useradd -g db2fgrp -u 802 -d /home/db2fenc -m -s /bin/sh db2fenc# useradd -g db2agrp -u 803 -d /home/db2das -m -s /bin/sh db2das第七步修改密码# passwd db2inst1Changing password for db2inst1.New password:[db2inst1]Re-enter new password:[db2inst1]创建完成后,执行如下命令,检查用户组和用户是否创建成功。
一、在linux(虚机)上部署DB2(8.2版本)(一)用命令行安装及配置db2数据库1.利用远程终端工具上传DB2_V82_ESE_LNX_32_NLV.tar到linux系统上。
如放置在/tmp/gxs目录中。
2.进入“/tmp/gxs”目录,执行tar命令解压db2的安装包3.解压后在gxs目录中的内容如下拷到license中,否则db2安装完后不能使用。
4.执行db2_install命令,进行db2数据库安装。
5.如下所示,输入DB2.ESE后,回车确定。
6.安装完毕后的页面如下所示。
DB2默认安装在/opt/IBM目录下。
7.创建用户id,如下所示。
可。
如下所示。
8.创建实例,首先我们使用以下命令创建管理服务器实例,切换到root用户,进入/opt/IBM/db2/V8.1/instance目录中。
执行:./dascrt -u dasusr1命令9.接着使用以下命令创建数据库实例db2inst1这个命令有一些可选的参数。
特别地,-a选项允许我们指定一个不同于缺省的“server”的认证机制。
10.创建共享库链接,进入/opt/ibm/db2/v8.1/cfg/目录中,如下所示11.设置db2实例环境变量。
用su命令切换到db2实例所用者用户终端12.执行db2start命令,验证db2是否成功安装。
13.设置服务端口,输入db2命令,进入db2命令行模式(c) Copyright IBM Corporation 1993,2002Command Line Processor for DB2 SDK 8.2.0Y ou can issue database manager commands and SQL statements from the command prompt. For example:db2 => connect to sampledb2 => bind sample.bndFor general help, type: ?.For command help, type: ? command, where command can bethe first few keywords of a database manager command. For example:? CA TALOG DA TABASE for help on the CA TALOG DA TABASE command? CA TALOG for help on all of the CA TALOG commands.To exit db2 interactive mode, type QUIT at the command prompt. Outside interactive mode, all commands must be prefixed with 'db2'.To list the current command option settings, type LIST COMMAND OPTIONS.For more detailed help, refer to the Online Reference Manual.db2 =>14.执行:update database manager configuration using svcename server1|50000其中:server1|50000两者选其一,server1|为服务名,50000为端口号15.执行get database manager configuration16.创建数据库:create database dbname如果此处失败,在命令行执行db2start,或者重新启动系统(reboot)。
. . . . .DB2数据库迁移指导书All Rights Reserved.Revision Record 修订记录目录1 数据备份21.1 备份数据库前置条件21.2 MAS数据库服务器全量数据导出22 创建数据库52.1 创建数据库的前置条件52.2 创建数据库53 数据恢复83.1 执行数据恢复的前置条件83.2 数据恢复步骤81 数据备份1.1 备份数据库前置条件1.MAS系统数据库服务器运行正常。
2.停止MAS系统应用服务器。
3.MAS系统数据库服务器无应用程序连接。
4.保留足够空间,存储备份数据。
1.2 MAS数据库服务器全量数据导出步骤 1用db2用户登录MAS系统数据库服务器。
# su - db2inst1步骤 2显示所有数据库应用。
# db2 list applications步骤 3停掉连接数据库的所有应用,保证备份数据一致。
然后执行命令:# db2 force applications all执行结果显示:DB20000I The FORCE APPLICATION command completed successfully.DB21024I This command is asynchronous and may not be effective immediately.步骤 4再次显示所有数据库应用。
# db2 list applications返回:SQL1611W No data was returned by Database System Monitor.说明没有数据应用了。
可以进行数据备份。
步骤 5创建数据导出目录,并且进入该目录。
# mkdir data#cd data步骤 6执行如下命令操作导出表结构。
db2look -d MASDB -e -a -x -i db2inst1 -w Y4yhl9T -o ddlfile.sqlMASDB:表示对应的数据库名。
aix到linux系统的迁移方案在将AIX(Advanced Interactive eXecutive)系统迁移到Linux系统时,需要执行一系列的步骤来确保数据的完整性和系统的连续性。
以下是一个基本的迁移方案:评估和规划:对AIX系统进行全面的评估,包括硬件、操作系统版本、应用程序和数据。
制定迁移计划,包括目标Linux系统的配置、应用程序的兼容性和数据转换。
硬件和系统准备:确定目标Linux系统的硬件配置,确保与AIX系统兼容。
安装和配置Linux操作系统,确保其具有必要的性能和功能。
数据迁移:使用适当的工具或方法将AIX系统上的数据迁移到Linux 系统。
这可能包括文件、数据库、配置文件等。
验证数据的完整性和准确性,确保没有数据丢失或损坏。
应用程序迁移:评估AIX系统上的应用程序是否可以在Linux系统上运行。
如果可以,需要安装和配置必要的依赖项。
如果应用程序无法直接在Linux上运行,可能需要寻找替代品或进行定制开发。
测试和验证:在生产环境之前,在测试环境中进行全面的测试,确保Linux系统的功能和性能与AIX系统相当。
对应用程序进行集成测试,确保它们与新环境兼容。
生产环境部署:一旦测试阶段没有问题,就可以将系统迁移到生产环境。
监控新系统的性能和稳定性,确保一切正常运行。
后期优化和监控:根据需要优化Linux系统的配置,以提高性能和可靠性。
定期监控系统,确保稳定运行,并及时处理任何问题。
文档和培训:更新所有相关文档,包括系统配置、应用程序和数据迁移的详细步骤。
为用户提供必要的培训,帮助他们熟悉新的Linux系统。
持续维护和支持:根据需要提供持续的系统维护和支持,包括安全更新、性能监控等。
定期评估系统,考虑是否需要进行进一步的优化或改进。
备份策略:建立并实施有效的备份策略,以确保数据的安全性和可恢复性。
定期测试备份恢复流程,确保在需要时可以快速恢复系统。
安全性考虑:在迁移过程中,确保遵循最佳的安全实践,包括数据加密、访问控制和防火墙配置等。
AIX和WINDOWS下DB2数据库互导1.目的1、DB2数据库在小机(如AIX)下进行备份后,无法在WINDOWS下对小机备份进行还原。
相反也是如此。
2、而在项目过程中,通常碰到项目现场的DB2是小机环境(如河北、四川),公司模拟环境是WINDOWS,故当需要在公司完全模拟现场数据时就做不到了。
本文目的是通过明确的步骤指导AIX和WINDOWS间DB2数据的互导。
在公司30小机(太差)和PC服务器(130)之间模拟数据,时间在2小时以内(工作流实例表数据在170W)。
2.前提本次预演把小机下的DB2数据导入WINDOWS下。
1、假设小机下的源数据库名为SCOA,对应的用户名和SCHEMA均为DB2INST1(小机下DB2默认);WINDOWS下的目标数据库为IOA(空库),用户名和SCHEMA均为DB2ADMIN(WINDOWS下数据库默认)。
2、把项目现场AIX下的数据库备份还原到公司小机下(此步骤比较简单,这里就不写了,一个restore命令)。
3、如果公司没有小机DB2环境,则以下3.1和3.2步骤在项目现场做,现场DB2不需停机。
3.步骤3.1.db2move抽取源数据抽取小机下SCOA库中的数据。
1、在db2cmd下,进入数据存放目录,假如抽取到/home/db2move目录。
命令是:cd /home/db2move2、执行db2move进行数据抽取。
命令是:db2move scoa export -sn db2inst1 -u db2inst1 -p db2inst1解释:scoa为源数据库名,-sn为要到处的schema名,-u为DBA权限的用户名,-p为对应密码。
3、根据源数据库所在机器的IO性能,等待若干时间不等。
如源数据库机器性能不佳,可以选取性能较好的机器作为客户端连到源数据库进行抽取,以分担IO写的性能。
3.2.db2look创建DDL如已经有和源数据库表结构一模一样的DDL脚本,本步骤可以跳过。
下面为您介绍的DB2数据导入导出方法实现的是AIX系统上DB2数据导入LINUX系统,如果您对DB2数据导入方面感兴趣的话,不妨一看。
(一)AIX系统上的操作:
1) 首先我们用db2look命令得到数据库对象的DDL脚本:
db2look -d SAMPLE -z DB2INST1 -e -o sample.ddl -i db2inst1 -w db2inst1
2) 使用文本编辑器编辑生成的sample.ddl,将创建表及索引的脚本语句,创建外键约束的语句,创建触发器的语句分开,制作成三个DDL脚本,分别是
sample_tabs.ddl
sample_foriegnkeys.ddl
sample_triggers.ddl
3) 使用下面的SQL语句生成导出所有数据的脚本:exort.sql
db2 "select 'export to ' || rtrim(tabname) || '.ixf of ixf select * from ' || rtrim(tabname) || ';' from syscat.tables where tabschema = 'DB2INST1'" > export.sql
4) 编辑生成的export.sql,把头和尾那些信息去掉,只保留必要的export命令.
5) 使用下面的SQL语句生成倒入所有数据的脚本(我们使用LOAD命令,而且必须使用)
db2 "select 'load from ' || rtrim(tabname) || '.ixf of ixf insert into ' || rtrim(tabname) || ';' from syscat.tables where tabschema = 'DB2INST1'" > load.sql
6) 编辑生成的load.sql,把头和尾的信息去掉,只保留必要的load命令.搜索sample_tabs.ddl文件中哪些表含有自增字段(含有GENERATED ALWAYS AS IDENTITY定义的字段的表),并把load.sql中含有自增字段的表的load命令加入modified by identityoverride语句(加在of ixf和 insert之间,例如: load from MYTABLE.ixf of ixf modified by identityoverride insert into MYTABLE;)
注意:load命令中的modified by identityoverride可以保证DB2数据时那些自增字段的值和原数据库中的数据一致.
7) 使用db2 -tvf export.sql命令,导出所有表的数据。
(二)将sample_tabs.ddl,sample_foriegnkeys.ddl,sample_triggers.ddl,load.sql及所有导出的.ixf 数据文件复制到LINUX机器上.
(三)LINUX系统上的操作:
1) 使用CREATE DATABASE命令创建数据库SAMPLE,创建必要的表空间及配置必要的数据库参数.
2) 连接到SAMPLE数据库,使用sample_tabs.dd脚本文件创建表(db2 -tvf sample_tabs.ddl).
3) 进入到放置.ixf数据文件的目录,使用db2 -tvf load.sql DB2数据.
4) 使用sample_foriegnkeys.ddl和sample_triggers.ddl脚本文件创建外键约束和触发器.
最后,别忘了对每张表运行runstats命令,你可以参照上面生成export和load命令脚本的方法来生成runstats脚本,然后再运行它。
【编辑推荐】
DB2自增字段IDENTITY的使用
DB2日期时间型数据类型介绍
DB2数值型数据类型简介
DB2数据导入的四点注意事项
DB2环境变量管理的策略选择。