這學期開了數據庫的課,學校的實驗平臺是IBM的DB2,同時還有操作系統的課,我的Windows系統下面已經有了SQL Server 2008 R2,于是打算在Linux下安裝DB2,系統版本是Ubuntu 10.10,內核版本是2.6.35,桌面環境是Gnome 2.32.0。
首先在IBM DB2 Express-C的網站上下載合適版本的DB2 Express-C free database server,x86或者x64,本文中使用32位,版本9.7.2。
http://www-01.ibm.com/software/data/db2/express/download.html
$ wget https://www6.software.ibm.com/sdfdl/v2/regs2/db2pmopn/db2_v97/expc/Xa.2/Xb.aA_60_-iVlH5j5ti5VAr0ufy2B4t0DU20DU00rQjXw/Xc.db2exc_972_LNX_x86.tar.gz/Xd./Xf.LPr.D1vk/Xg.5874238/Xi.swg-db2expressc/XY.regsrvs/XZ.Cts1PvyKYb9uchsEPonY1zKDDQg/db2exc_972_LNX_x86.tar.gz
看來wget支持ssl鏈接,下面配置Linux內核參數。
$ sudo gedit /etc/sysctl.conf
添加內核參數。
kernel.msgmni =1024
kernel.sem = 250 256000 32 1024
kernel.shmmax = 268435456
查看共享內存。
$ sysctl kernel.shmmax
結果顯示32M。
kernel.shmmax = 33554432
設置共享內存為256M。
$ sudo sh -c “echo 268435456 > /proc/sys/kernel/shmmax”
激活更改。
$ sysctl -p
如果沒有設置,啟動DB2的時候會報錯。
SQL1220N Thedatabasemanagersharedmemorysetcannotbeallocated.
安裝缺少的包。
$ sudo apt-get install libaio1
解壓縮。
$ tar -xvzf db2exc_972_LNX_x86.tar.gz
cd到解壓的文件夾,運行./db2setup進行圖形化安裝界面,也可以使用./db2_install進行命令行模式安裝。有人說這里如果用non-root安裝的話后面運行會出問題,本文使用root權限安裝,會安裝到/opt/ibm/db2下面。
$ sudo ./db2setup
安裝過程比較快,一路next,要設置三個DB2用戶的用戶名和密碼,DB2沒有獨立的用戶管理系統,這幾個用戶就是Linux的用戶,然后完成安裝。安裝結束后,運行一下安裝目錄下的db2profile添加環境變量。
/home/db2inst1/sqllib/db2profile
最后切換到數據庫實例用戶驗證是否安裝成功。
$ su – db2inst1
有一點和Windows下不一樣,Linux下不是DB2 Control Center,而是DB2 Health Center,所以啟動命令不是db2cc而是db2hc。
$ db2hc
到此就可以在Ubuntu上使用DB2了。