下载地址:

wget   ftp://public.dhe.ibm.com/software/hk/cobra/db2exc_970_LNX_x86_64.tar.gz

  • 上传压缩包到/opt,再解压db2安装包

tar -zxvf v9.7_linuxx64_server.tar.gz

  • 进入目录下expc,执行安装检查

cd expc

检查:
      ./db2prereqcheck

安装:

./db2_install
WARNING:
The 32 bit library file libstdc++.so.6 is not found on the system.
32-bit applications may be affected.

Default directory for installation of products - /opt/ibm/db2/V9.7

***********************************************************
Do you want to choose a different directory to install [yes/no] ?
yes
Enter full path name for the install directory -

------------------------------------------------
/opt/ibm/db2/V9.7   可以指定安装路径

  •  创建用户

(不要问我为什么创建这几个用户,创建就好了)
groupadd -g 2000 db2iadm1
groupadd -g 2001 db2fadm1
useradd -m -g db2iadm1 -d /db2_data/db2inst1 db2inst1
useradd -m -g db2fadm1 -d /db2_data/db2fenc1 db2fenc1

-u uid  使用者的ID值,必须为唯一的ID值,除非用-o选项可以不唯一,数字不可为负值,0~999传统上是保留给系统帐号使用。
-d path  使用者目录
-m   使用者目录如不存在则自动建立
-s shell  使用者登入后使用shell名称作为提示符,如果不写系统会帮你指定预设的登入shell

  • 设置用户密码 (要记住哦)

passwd db2inst1

  •  注册协议

cd /opt/ibm/db2/V9.7/adm
chmod -R 775 *
./db2licm -a /opt/expc/db2/license/db2expc_uw.lic

  • 配置实例

cd /opt/ibm/db2/V9.7/instance
chmod -R 775 *
./db2icrt -u db2inst1 db2inst1

  • 添加实例的监听端口

vim /etc/services
最后一行
echo "db2c_db2inst1 60000/tcp" >>/etc/services

tail /etc/services

  • 切换用户

su - db2inst1

db2 update database manager configuration using svcename db2c_db2inst1

db2set DB2COMM=tcpip

  • 启动实例

db2start

  • 创建sample数据库(用来验证安装db2是否成功):

db2sampl         (这个地方不需要带 "e")

连接到sample:

db2 connect to sample      (这个地方需要带"e")

连接成功后,输入查询语句:

db2 "select * from staff"

退出数据库连接:

db2 disconnect sample

  • 列出所有数据库

db2 list db directory

  • 设置DB2自启动

[root@db2]#cd /opt/ibm/db2/V9.7/instance

[root@instance]#./db2iauto -on db2inst1

  • 创建数据库userdb:

db2 create db userdb   (注意:这里是db不是database)

列出所有数据库

db2 list db directory

激活数据库

activate db命令用于激活创建过的数据库,它使数据库可用于应用程序。

语法:

db2 activate db <db_name>

db2 activate db  userdb

连接到userdb:

db2 connect to userdb

创建表:

db2 "create table tablename(id int,name varchar(50))"

插入数据:

db2 "insert into tablename values(1,'user1')"

查询数据:

db2 select * from tablename

  •  其它常用命令:

列出所有实例:

db2ilist

列出当前实例:

db2 get instance

设置当前实例:

set db2instance=db2        (实例名)

列出所有表空间的详细信息

db2 list tablespaces show detail

列出容器的信息

db2 list tablespace containers for tbs_id show detail

列出所有表

db2 list tables       (不是mysql的show tables)

=====================================================================

  • 创建一个实例命令

实例是DB2数据库管理器中的逻辑环境。使用实例可以管理数据库。根据我们的要求,可以在一台物理机器创建多个实例。实例目录的内容是:

  • 数据库管理器配置文件
  • 系统数据库目录
  • 节点目录
  • 节点配置文件 [db2nodes.cfg]
  • 调试文件,转储文件

对于DB2数据库服务器,默认情况下是“DB2”。这不可以在创建后更改实例目录的位置。一个实例可以管理多个数据库。在一个实例,每个数据库都有一个唯一的名称,它自己的一套目录表,配置文件,权限和特权认证。

DB2产品架构

多个实例

可以在Linux,UNIX和Windows的一个DB2Server,创建多个实例。它可以将一个物理机器上安装多个DB2Servers。

在Linux上创建实例

可以在Linux和UNIX创建多个实例,如果DB2服务器安装为root用户。一个实例可以同时在Linux和UNIX独立运行。可以在一次在数据库管理器的单个实例中工作。

实例文件夹中包含数据库配置文件和文件夹。实例目录存储在取决于Windows操作系统版本的不同位置。

实例列表

下面的命令用于列出的实例:

db2ilist

该命令列出了所有可用的系统上的实例。

语法:

db2ilist

示例: [看看由DB2副本创建有多少实例]

db2ilist

输出:

db2inst1

db2inst2

db2inst3

实例环境的命令

这些命令符合实例在DB2 CLI管理工作有用。

获得实例

此命令显示当前运行的实例的详细信息。

语法:

db2 get instance

示例: [看看当前实例由哪个当前用户的激活]

db2 get instance

输出:

The current database manager instance is : db2inst1

设置实例

要启动或停止DB2 UDB实例的数据库管理器,下面的命令执行当前实例。

语法:

set db2instance=<instance_name>

示例: [ 安排“db2inst1”环境到当前用户]

set db2instance=db2inst1

db2start

使用此命令,就可以启动一个实例。在此之前,需要运行“set instance”。

语法:

db2start

示例: [要启动一个实例]

db2start

输出:

SQL1063N DB2START processing was successful

db2stop

使用此命令可以停止正在运行的实例。

语法:

db2stop

输出:

SQL1064N DB2STOP processing was successful.

创建一个实例

让我们来看看如何创建一个新的实例。

db2icrt

如果想创建一个新的实例,需要使用root身份登录。实例ID不可以是root id或root名称。

下面是步骤来创建一个新的实例:

步骤1: 创建例如操作系统用户。

语法:

useradd -u <ID> -g <group name> -m -d <user location> <user name>

-p <password>

示例:  [在组“db2iadm1”和密码“db2inst2”创建实例名为'db2inst2'用户]

useradd -u 1000 -g db2iadm1 -m -d /home/db2inst2 db2inst2 -p db2inst2

步骤2: 转到root用户DB2实例目录中创建新实例。

位置:

cd /opt/ibm/db2/v10.1/instance

步骤3: 使用下面的语法创建实例:

语法:

./db2icrt -s ese -u <inst id> <instance name>

示例: [创建一个新的实例”db2inst2“在用户db2inst2“带有”ESE“(企业服务器版)功能,]

./db2icrt -s ese -u db2inst2 db2inst2

输出:

DBI1446I The db2icrt command is running, please wait.

….

…..

DBI1070I Program db2icrt completed successfully.

配置通信端口和主机的一个实例

编辑/etc/services文件,并添加端口号。在下面给出的语法,'inst_name'表示的实例名,'inst_port' 表指实例的端口号。

语法:

db2c_<inst name> <inst_port>/tcp

例如:[添加'50001/tcp“端口号,例如”db2inst2“与”services“文件变量”db2c_db2inst2']

db2c_db2inst2 50001/tcp

语法 1: [更新数据库管理器配置与服务名称。以下语法'svcename'表示实例服务名称,以及“inst_name”表示实例名称]

db2 update database manager configuration using svcename db2c_&<inst_name>

示例: [更新DBM配置变量svcename的值为“db2c_db2inst2”,为实例“db2inst2”

db2 update database manager configuration using svcename db2c_db2inst2

输出

DB20000I The UPDATE DATABASE MANAGER CONFIGURATION command completed successfully.

语法2:设置“tcpip”通讯协议为当前实例

db2set DB2COMM=tcpip

语法3:停止和启动当前实例得到来自数据库管理器配置更新的值]

db2stop

db2start

更新实例

可以使用以下命令更新实例:

db2iupdt

此命令用于同一版本释放内更新实例。执行此命令之前,需要使用“db2stop”命令停止实例数据库管理器。下面的“inst_name”语法表示前释放或安装DB2服务器实例的名称,要升级到新的版本或安装DB2服务器版本。

语法1: 更新正常模式下的一个实例

db2iupdt <inst_name>

实例1:

./db2iupdt db2inst2

语法 2: 更新调试模式实例

db2iupdt -D <inst_name>

实例

db2iupdt -D db2inst2

升级实例

可以从先前版本的DB2副本的实例升级到目前新安装的DB2副本版本。

db2iupgrade

在Linux或UNIX系统中,该命令位于DB2DIR/ instance目录。在下面的语法,“inst_name”表示以前的版本DB2实例和“inst_username”表示当前安装的版本DB2副本实例用户。

语法 2:

db2iupgrade -d -k -u <inst_username> <inst_name>

示例:

db2iupgrade -d -k -u db2inst2 db2inst2

命令参数:

-d : 打开调试模式。

-k : 保持如果支持的DB2副本,从正在运行此命令升级前的实例类型。

如果使用的是超级用户(SU)在Linux上的db2iupgrade命令,必须发出“su”命令以及“- ”选项。

删除实例

可以删除或删除实例,这是由“db2icrt”命令创建的。

db2idrop

在Linux和UNIX操作系统,此命令位于DB2_installation_folder/实例目录。

语法:[ 以下语法,“inst_username”表示实例的用户名,“inst_name”表示实例名称]

db2idrop -u <inst_username> <inst_name>

例如:[删除db2inst2]

./db2idrop -u db2inst2 db2inst2

使用实例与其他命令

命令找出我们当前工作的DB2实例。

语法1:检查由数据库管理器激活当前实例]

db2 get instance

输出:

The current database manager instance is:  db2inst1

语法2:要查看当前实例与操作位和发行版本]

db2pd -inst | head -2

示例

db2pd -inst | head -2

输出

Instance db2inst1 uses 64 bits and DB2 code release SQL10010

语法3:要检查当前的工作实例的名称]

db2 select inst_name from sysibmadm.env_inst_info

实例:

db2 select inst_name from sysibmadm.env_inst_info

输出:

INST_NAME  --------------------------------------

db2inst1

1 record(s) selected.

语法: [设置为默认的新实例]

db2set db2instdef=<inst_name> -g

例如:[数组新创建的实例作为默认实例]

db2set db2instdef=db2inst2 -g

  • 三种级别的db2数据库字符集的设置与修改

DB2数据库与字符集相关的问题主要有三个层次的字符集的设置,其中系统级别和实例级别的字符集可以根据需求进行修改,而数据库级别的数据集则必须在建库时确定:
1)操作系统 Locale:系统级别的代码页设置,决定应用程序的默认代码页;

如果您希望将 OS Locale 设置为中文,可使用以下方法:

UNIX:你可以通过 export LANG=”zh_CN” 命令修改当前的 Locale 到中文; 
Windows:在“开始->设置->控制面板->区域选项”中进行对系统的语言设置进行选择; 
2)DB2CODEPAGE:DB2 实例级别的代码页设置,会影响 DB2 相关应用程序对代码页转换时做出代码页判定;

可以通过 db2set DB2CODEPAEG= 命令将 DB2CODEPAGE 设置为你需要的字符集;

3)DATABASE CODEPAGE:DB2 数据库级别的代码页设置;必须在建库时进行设置.

在创建数据库时指定需要的代码页,db2 "CREATE DATABASE dbname USING CODESET UTF-8 TERRITORY CN" 
这条语句可用于创建指定区域为中国(CN)的 Unicode 数据库。

db2部署的更多相关文章

  1. db2部署与数据仓库应用

    概念特性 安装 基础命令 连接 监控 存储过程 数据合并 Merge Into是增量备份 结果集分组 row_number() OVER (PARTITION BY COL1 ORDER BY COL ...

  2. 使用Docker快速部署各类服务

    使用Docker快速部署各类服务 一键安装Docker #Centos环境 wget -O- https://gitee.com/iubest/dinstall/raw/master/install. ...

  3. [DB2]实现项目多数据库切换(上)--环境部署

    基本软硬件信息:Windows 8.1 X64 / Microsoft Visual Studio 2012  / ThinkPad S3-S431 安装工具:IBM Data Studio 4.1. ...

  4. DB2简介和安装部署

    一.DB2相关概念 1.DB2体系结构: DB2体系结构中的最高一层是系统,一个系统表示DB2的一个安装.在由很多机器组成 的网络环境中,我们有时=也称系统为数据库分区,一个系统可以包含多个DB2实例 ...

  5. Linux+db2+was部署问题总结

     Linux+db2+was部署问题总结 前段日子在住建部进行了Linux环境下,db2+rbp+was的部署,由于是集群,切涉及到了很多was的东西,搞了很长时间,在此做一个问题总结,供后续查询 ...

  6. [置顶] 老孟 DB2 V9.7 ESE(一)产品部署 基于centOS 6.4

    本文安装系统CENTOS 6.4 DB2位数64 安装中涉及目录位置各位可自行定义 生产系统为安全和性能考虑,一般将DB2实例目录.日志目录.归档日志目录.表空间目录区分开,可建立/db2home / ...

  7. 你搞懂 ORACLE、 SQLSERVER、MYSQL与DB2的区别了吗

    ORACLE. SQLSERVER.MYSQL与DB2的区别--平台性:    Oracle.MYSQL与DB2可在所有主流平台上运行:    SQL Server只能在Windows下运行: --安 ...

  8. 编译安装zabbix 3.0及分开部署配置详解

    实验系统:CentOS 6.6_x86_64 实验前提:提前准备好编译环境,防火墙和selinux都关闭 实验说明:本实验共有4台主机,IP及角色分配如拓扑 下载地址:试验中用到mariadb软件的下 ...

  9. 基于Flask的Web应用部署到SAE上遇到的问题

    我的应用底层数据库用的是MySQL,利用Flask-SQLALchemy实现接口操作.我遇到的问题是: 在我把代码部署到SAE上后,当数据向数据库insert的时候总是出现“2006,MySQL ha ...

随机推荐

  1. Java获取环境变量和系统属性

    Java获取服务器环境变量和JVM系统变量    当程序中需要使用与操作系统相关的变量(例如:文件分隔符.换行符)时,Java提供了System类的静态方法getenv()和getProperty() ...

  2. 阿里巴巴和印度最大移动支付和商务平台Paytm

    2015年9月29日,阿里巴巴和印度最大移动支付和商务平台Paytm发布联合声明,宣布阿里巴巴集团及其旗下金融子公司蚂蚁金服将向Paytm注入新资金.阿里称这是一项“战略性的”投资. 蚂蚁金服已经在2 ...

  3. LightOJ-1074 Extended Traffic 最短路问题 注意连通性

    题目链接:https://cn.vjudge.net/problem/LightOJ-1074 题意 给一图 求最短路 若最短路<3或没有最短路,则输出'?' 思路 首先注意到可能存在负环,所以 ...

  4. [NOIP2012提高组]疫情控制

    题目:洛谷P1084.codevs1218.Vijos P1783. 题目大意:有一棵n个节点的,根为1的带权树和m支军队.每支军队可以在一个点上停下,那么从1开始就不能经过这个点了.现在有m支军队已 ...

  5. Linux Kernel 5.1 RC5发布

    我们距离正式的Linux 5.1内核发布还有不到一个月的时间,而今天Linus Torvalds宣布推出预期的Linux Kernel 5.1 RC5版本.Linus Torvalds专门评论了Lin ...

  6. [luogu] P1772 [ZJOI2006]物流运输(动态规划,最短路)

    P1772 [ZJOI2006]物流运输 题目描述 物流公司要把一批货物从码头A运到码头B.由于货物量比较大,需要n天才能运完.货物运输过程中一般要转停好几个码头.物流公司通常会设计一条固定的运输路线 ...

  7. C语言中头文件尖括号和引号的区别

    用include 引用头文件时,双引号和尖括号的区别: 1.双引号:引用非标准库的头文件,编译器首先在程序源文件所在目录查找,如果未找到,则去系统默认目录查找,通常用于引用用户自定义的头文件. 2.尖 ...

  8. 【BZOJ 1588】 [HNOI2002]营业额统计

    [链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 每天的最小波动值指的是和之前所有天的差值的绝对值中的最小值. 用set.的lower_bound函数. 每次找和他差值最小的数字就好 ...

  9. Informatica环境搭建过程中一些问题-近期项目进了新人,在搭建环境中存在一些问题,之前都处理过一直没有整理,这次接着机会,把这些常见问题处理整理出来

    一.Informatica9.5.1创建资源库出错找不到libpmora8.so 错误如下: Database driver event...Error occurred loading librar ...

  10. [Angular] Configure an Angular App at Runtime

    It always again happens (especially in real world scenarios) that you need to configure your Angular ...