Linux下db2V10.5命令列安裝超詳細圖文教程(附下載地址)

詹慶豪發表於2020-05-30

下載地址:https://pan.baidu.com/s/1GtF03x1FMF3IsGdSiBJu-g 提取碼:8vfj

失效了發郵件:wells974@163.com

一、db2prereqcheck預檢查

首先進入到壓縮包所在的目錄,執行tar命令對.tar.gz壓縮檔案進行解壓

# 解壓到當前目錄 
tar -zxvf v10.5_linuxx64_expc.tar.gz
# 後面加 -C 目錄  可以指定需要解壓到的目錄。
# 如:tar -zxvf v10.5_linuxx64_expc.tar.gz -C /home/wells/soft

image-20200528234445605

image-20200528234507228

第一次解壓的時候失敗了,刪了重新從網盤下了一次再解壓,解壓完成!

解壓完成後,進入當前目錄下剛剛解壓出來的expc資料夾,通過ll命令可以看到,有一個叫db2prereqcheck的檔案,這個檔案是用於db2安裝預檢查的,命令如下:

# 進入解壓出來的資料夾
cd expc/
# 檢視當前所在目錄下的所有檔案資訊
ll
# 執行預檢查程式
./db2prereqcheck

image-20200528234934522

image-20200528235917162

預檢查程式顯示未滿足的條件,這裡出現了4個問題。

  1. /lib/libpam.so*

    錯誤資訊

    英文:
    	DBT3514W The db2prereqcheck utility failed to find the following 32-bit library file: "/lib/libpam.so*"
    中文:
    	DBT3514W db2prereqcheck 實用程式未能找到以下 32 位庫檔案:"/lib/libpam.so*"
    

    解決方案:

    yum install pam-devel.i686
    yum install pam.i686
    

    這裡我只執行成功了yum install pam-devel.i686,執行yum install pam.i686時提示沒有可以安裝的依賴包。

image-20200529000805420

  1. sg3_utils / sg_persist

    錯誤資訊

    英文:
    	DBT3507E The db2prereqcheck utility failed to find the following package or file: "sg_persist".
    	DBT3507E The db2prereqcheck utility failed to find the following package or file: "sg3_utils".
    中文:
    	DBT3507E db2prereqcheck 實用程式未能找到以下程式包或檔案:"sg_persist"
    	DBT3507E db2prereqcheck 實用程式未能找到以下程式包或檔案:"sg3_utils"
    

    解決方案:

    yum install sg3_utils-*
    

    執行一行解決兩個!nice!

sg_persist也解決了

image-20200529000940950

  1. 關閉SELinux

    這裡我使用永久關閉,百度有臨時關閉的方法~

    使用vi命令編輯/etc/selinux/config

    vi /etc/selinux/config
    

    image-20200529001512208

    SELINUX=enforcing註釋,新增一行SELINUX=disabled:wq儲存退出

    image-20200529001611397

    設定完成後,記得使用reboot命令重啟。

重啟後再次執行預檢查程式。

# 執行預檢查程式
./db2prereqcheck

如下圖所示,剛剛出現的問題已經解決了!

image-20200529001908459

二、db_install安裝

還是在剛剛的expc資料夾,執行db2_install進行安裝:

./db2_install

這裡有詢問是否安裝到預設目錄。我這裡選擇,當然,也可以輸入 否 ,安裝到指定的目錄。

image-20200529002028964

image-20200529002304763

三、建立使用者組和使用者

建立例項前,需要先建立使用者組和使用者

# 建立兩個組
groupadd db2adm1
groupadd db2fen1
# 建立兩個使用者,並將他們分配給剛剛建立好的使用者組
# 在這裡-d指定目錄,-m 表示如果使用者目錄不存在,則建立, -g指定使用者組
useradd -d /home/db2inst1 -m db2inst1 -g db2adm1
useradd -d /home/db2fenc1 -m db2fenc1 -g db2fen1

image-20200529003006221

db2inst1db2fenc1兩個賬戶設定密碼,如果沒有設定密碼後面會出現問題。

tip: 密碼不能小於8位,且不能與使用者名稱相同

passwd db2inst1
passwd db2fenc1

image-20200529003134784

image-20200529003201052

現在可以建立例項啦~

首先進入我們前面的安裝路徑/opt/ibm/bd2/V10.5下的/instance/目錄。在這個目錄下,用lsll命令可以看到一個叫db2icrt的命令。他是db2 instance create 的縮寫,我們用這個命令來建立一個例項。

cd /opt/ibm/bd2/V10.5/instance/
ll
# 建立一個叫db2inst1的例項
./db2icrt -u db2fenc1 db2inst1

image-20200529003447677

image-20200529010040840

驗證是否建立成功

# 切換使用者
su - db2inst1
# 啟動資料庫例項
db2start
# 在例項中建立資料庫
db2sampl # 建立一個DB2SAMPL樣板庫
# 或
db2 create create db wellsdb # 用db2的命令來建立資料庫,這裡的wellsdb是資料庫名,可改成自己的

image-20200529010213574

image-20200529010442288

# 檢視當前例項下所存在的資料庫 
db2 list db directory

image-20200529010522444

# 連線到資料庫
db2 connect to wellsdb

image-20200529010611931

# 檢視當前資料庫下的表空間有哪些,可以看到,我的資料庫中有3個表空間,id 分別為 0,1,2
db2 list tablespaces

image-20200529010803613

執行sql語句

db2 "create table user(id int,name varchar(10))"
db2 "insert into user values(1,'wells')"
db2 "insert into user values(2,'974')"
db2 "select id,name from user"

image-20200530120103686

image-20200530120426020

image-20200530120515158

關閉資料庫

db2 terminate
db2stop

image-20200530120813456

tip:

terminate 、db2stop、db2start三個命令的意義

db2 terminate

  1. 斷開當前與資料庫的連線

  2. 終止後臺對應的db2bp程式

db2start/db2stop

​ 啟動/停止資料庫伺服器

搞定,債見~

相關文章