在 Linux 平台下安装 DB2 Express C

项目中使用的数据库是DB2,  比较悲催的是它的连接速度, 有时候开发的时候连接太慢了。但是现在 IBM 推出了免费的 DB2 Express C 版本,我们在开发的过程中是可以自由使用的。  

本文记录了我在 一台 64位 Linux 服务器上的安装 DB2 Express C 的过程。 

1,  下载  首先先是得到 IBM 网站下载这个软件。  我所使用的是 DB2 Express 10.1 版本。因为我们的平台是 Linux x86_64  64 位, 所以就下了这个 db2_v101_linuxx64_expc.tar.gz。  

2, 安装DB2

拷贝 这个文件到  argudev 机器得  /tmp 目录

# cd /tmp

# tar zxvf   db2_v101_linuxx64_expc.tar.gz   

#cd  expc

# ./db2_install

安装时若提示找不到libaio.so  及libstdc++.so,则先下载安装相应的软件包。

正常的话 等待 几分钟 你就可以看到 

Successfully 的信息了

3, 配置DB2

#创建用户组及用户

groupadd -g 2000 db2iadm1

useradd -m -g db2iadm1 -d /home/db2inst1 db2inst1

passwd db2inst1
>db2inst1

 

这个时候我们创建了  db2iadm1  用户组 以及 一个 用户名和密码都是db2inst1 的用户。

 

#创建实例
/opt/ibm/db2/V10.1/instance/db2icrt -a server -u  db2inst1 db2inst1

DBI1070I Program db2icrt completed successfully.

 

#产品许可证
/opt/ibm/db2/V10.1/adm/db2licm -a  expc/db2/license/db2expc_uw.lic


LIC1402I License added successfully.

LIC1426I This product is now licensed for use as outlined in your License Agree
ment. USE OF THE PRODUCT CONSTITUTES ACCEPTANCE OF THE TERMS OF THE IBM LICENSE
AGREEMENT, LOCATED IN THE FOLLOWING DIRECTORY: "/opt/ibm/db2/V10.1/license/en_US
.iso88591"


#允许SMS的多页分配
/opt/ibm/db2/V10.1/cfg/db2ln

 

#添加DB2端口

在文件 /etc/services 加入下面一行
db2inst  50000/tcp

 

#DB2 配置
su - db2inst1

下面都是以 用户db2inst1 来运行了


$ db2set DB2_EXTENDED_OPTIMIZATION=ON
$ db2set DB2_DISABLE_FLUSH_LOG=ON
$ db2set AUTOSTART=YES
$ db2set DB2_STRIPED_CONTAINERS=ON
$ db2set DB2_HASH_JOIN=Y
$ db2set DB2COMM=tcpip
$ db2set DB2_PARALLEL_IO=*
$ db2set DB2CODEPAGE=819

#Update dbm cfg
#TCP/IP Service name
$ db2 update dbm cfg using SVCENAME db2inst
DB20000I The UPDATE DATABASE MANAGER CONFIGURATION command completed
successfully.

 


$ db2 update dbm cfg using INDEXREC ACCESS
DB20000I The UPDATE DATABASE MANAGER CONFIGURATION command completed
successfully.

 

#运行DB2
必须先运行DB2才能创建数据库,否则报如下错误
SQL1032N No start database manager command was issued. SQLSTATE=57019
$ db2start
SQL1063N DB2START processing was successful.

#创建库

$ db2 "CREATE DATABASE DCDDB1 ALIAS DCDDB1 USING CODESET ISO8859-1 TERRITORY US"
DB20000I The CREATE DATABASE command completed successfully.

$ db2 connect to DCDDB1
   Database Connection Information

Database server        = DB2/LINUX 10.1

SQL authorization ID   = DB2INST1
Local database alias   = DCDDB1

$ db2 "CREATE table mytable ( col1 INTEGER NOT NULL, col2 VARCHAR(40), col3 DECIMAL(9,2))"
DB20000I The SQL command completed successfully.

$ db2 "SELECT * FROM mytable FETCH FIRST 10 ROWS ONLY"

这样就成功了,  如果我们 telnet  localhost   50000 发现 端口没有打开

我们需要通过   $db2stop  force 

来 停掉 db2 数据库 然后 db2start 重新开启db2。 本人安装的时候没有重启 instance , 困惑本机可以用db2 命令可以select, 但是远程就是连不上。 

 

4,  客户端 连接 数据库

DataSource.driverClassName=com.ibm.db2.jcc.DB2Driver

DataSource.url=jdbc:db2://dbServer:50000/DCDDB1

DataSource.username=db2inst1

DataSource.password=db2inst1

DataSource.dialect=org.hibernate.dialect.DB2390Dialect


注意  数据库 服务器 , database 名字  , 以及用户名 

当然你也可以用  DBVisualizer 来连接 到这个数据库。 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值