下载地址:

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. WPF学习(二) - 绑定

    绑定,这个看起来很神奇的东西,于我这种喜欢刨根儿的人而言,理解起来非常困难.    WPF绑定的核心思想是:数据层属性值的改变,能反应给展示层,反之亦然,并且这个响应的过程能被分离出来. 传统Winf ...

  2. 4月17日 (PS:由于时间问题,现在才发,望老师见谅)疯狂猜成语-----第三次站立会议 参会人员:杨霏,袁雪,胡潇丹,郭林林,尹亚男,赵静娜

    疯狂猜成语-----第三次站立会议 参会人员:杨霏,袁雪,胡潇丹,郭林林,尹亚男,赵静娜 会议内容: 组员依次汇报自己的工作进度,并且提出自己在进行任务的过程中遇到的问题,是否解决以及解决办法. 以下 ...

  3. 一个php处理图片裁剪,压缩,水印的小代码

    插件地址:https://github.com/cigua/imagefilter

  4. HDU-4370 '0 or 1' 最短路 要考虑连通性

    题目链接:https://cn.vjudge.net/problem/HDU-4370 题意 给一个矩阵C(nn),要我们找到一个矩阵X(nn),满足以下条件: X_{12}+X_{13}+...X_ ...

  5. BZOJ 3881 [COCI2015]Divljak (Trie图+Fail树+树链的并+树状数组维护dfs序)

    题目大意: Alice有n个字符串S_1,S_2...S_n,Bob有一个字符串集合T,一开始集合是空的. 接下来会发生q个操作,操作有两种形式: “1 P”,Bob往自己的集合里添加了一个字符串P. ...

  6. 用shell写一个简单DHCP配置脚本

    轩轩写的这个小脚本,主要是可以进行对dhcp服务的安装.简单配置.开启.关闭/查看状态等情况 使用呢非常简单,按照步骤进行准确的设置就可以啦 #!/bin/bashyum -y install dhc ...

  7. ZOJ 2601 Warehouse Keeper

    Warehouse Keeper Time Limit: 2000ms Memory Limit: 65536KB This problem will be judged on ZJU. Origin ...

  8. 成都磨子桥技工学校 / 2016届练习区 0003:jubeeeeeat

    0003:jubeeeeeat 总时间限制:  1000ms 内存限制:  256000kB 描述 众所周知,LZF很喜欢打一个叫Jubeat的游戏.这是个音乐游戏,游戏界面是4×4的方阵,会根据音乐 ...

  9. [Angular] Configure an Angular App at Compile Time with the Angular CLI

    Compile time configuration options allow you to provide different kind of settings based on the envi ...

  10. mongodb E11000 duplicate key error collection: index: _id_ dup key

    今天在单测的时候,出现这个问题. 我代码只定义了一个变量 let body = {name: 'wu'} 然后连续2次插入这个body数据 await exam.insertExam(body); a ...