opensuse linux環境下ibm_websphere和ibm_db2安裝html
ibm_websphere安裝:linux
一、ibm官網下載免費版websphere,以下載文件名爲BASETRIAL.agent.installer.linux.gtk.x86_64.zip的壓縮文件。web
二、在opensuse linux環境下使用unzip命令對壓縮包進行解壓。sql
三、cd命令進入解壓後的文件目錄以管理員身份運行install文件便可來到圖形化的安裝界面,以後按照提示一步步完成安裝便可(另外也能夠採用非圖形化的靜默安裝方式)。shell
四、安裝完成後會自動彈出「第一步」信息驗證界面(若爲自動彈出該界面,則需進入安裝目錄(通常爲這個目錄/opt/IBM/WebSphere/AppServer_1/profiles/AppSrv01)下的firststeps文件夾中的firststeps.sh,以管理員身份運行該文件來啓動第一次驗證界面)數據庫
五、在「第一步」信息驗證界面點擊「安裝驗證」選項則會彈出驗證界面,此時「 啓動服務器」選項爲不可用狀態,待驗證完成後便可啓動服務器。瀏覽器
六、服務啓動成功後便可在瀏覽器中訪問https://localhost:9043/ibm/console來進入websphere控制檯進行相應的管理操做(建立數據源、應用程序等)。安全
七、首次安裝完成後概要文件會自動建立通常自動建立的概要名字爲AppSrv01,若沒有概要文件則要本身建立概要文件參考地址:http://blog.chinaunix.net/uid-532511-id-3189104.html?/15726.htmlbash
八、websphere項目部署參考地址:http://www.finereporthelp.com/help/4/0/3/3.html#docnamehttp://www.finereporthelp.com/help/4/0/3/3.html#docname服務器
Linux下啓動/中止WebSphere
1.以root用戶身份登錄,進入websphere安裝目錄的bin目錄下,
cd /opt/WebSphere/AppServer/bin(此路徑根據WebSphere具體安裝路徑肯定)
//啓動服務
[root@localhost bin]$ ./startServer.sh server1
//中止服務
[root@localhost bin]$ ./stopServer.sh server1
若是是集羣可能的路徑是
/opt/WebSphere/AppServer/bin
//啓動服務
[root@localhost bin]$ ./startManager.sh
//中止服務
[root@localhost bin]$ ./stopManager.sh
若是啓動時出現這樣的錯誤信息:
ADMU0118E: 日至文件沒法寫到位置
/opt/WebSphere/AppServer/logs/server1/startServer.log請使用
-logfile 指定不一樣的位置
ADMU3100I: 正在從服務器讀取配置server1
ADMU0111E: 程序退出,帶有錯誤。
com.ibm.ws.process.exception.InvalidFileException:
PROC0007E: Some files required by the process or the process
definition were unaccessable. Please check the standard in, out,
and error file redirects and directories. Process could not be
created.
ADMU0211I: 在文件
/opt/WebSphere/AppServer/logs/server1/startServer.log
中可看到錯誤的詳細信息
ADMU1211I: 要獲取故障的所有跟蹤,使用 -trace 選項
多是登錄的用戶沒有足夠的權限,須要使用有權限的用戶啓動。
2.服務啓動後進入管理控制檯
進入/WebSphere/AppServer/firststeps/使用命令
[root@tc10 firststeps]# ./firststeps.sh
能夠打開WAS第一步。
三、websphere默認端口:
管理控制檯端口,缺省值:9060
管理控制檯安全端口,缺省值:9043
HTTP 傳輸端口,缺省值:9080
HTTPS 傳輸端口,缺省值:9443
引導端口,缺省值:2809
SOAP 鏈接器端口,缺省值:8880
SAS SSL ServerAuth 端口,缺省值:9401
CSIV2 ServerAuth 偵聽器端口,缺省值:9403
CSIV2 MultiAuth 偵聽器端口,缺省值:9402
ORB 偵聽器端口,缺省值:9100
高可用性管理器通訊端口,缺省值:9353
服務集成端口,缺省值:7276
服務集成安全端口,缺省值:7286
服務集成 MQ 互操做性端口,缺省值:5558
服務集成 MQ 互操做性安全端口,缺省值:5578
ibm_db2安裝:
一、ibm官網下載免費版db2安裝包,以下載文件名爲的壓縮文件。,以下載文件名爲db2_v101_linuxx64_expc.tar.gz的壓縮文件。
二、在opensuse linux環境下使用tar -zxvf命令對壓縮包進行解壓,解壓後會獲得名爲expc的文件夾。
三、cd命令進入解壓後的文件夾中能夠看到兩個可執行文件db2_install和db2setup,db2_install爲命令行靜默安裝方式而db2setup爲圖形化安裝方式(兩種安裝方式都可完成安裝採用圖形化安裝方式安裝後能夠在圖形化界面進行數據庫用戶添加密碼設置等相關操做比較方便,採用靜默安裝方式完成後則須要在命令行內進行用戶組的添加以及用戶添加、密碼設置、數據庫建立等一系列的操做比較麻煩,但仍是建議用命令行的方式進行全程操做,由於通用性更強不是全部的linux操做系統均可以使用圖形化方式進行操做的),安裝過程只需按照提示完成便可這裏再也不過多敘述。
四、安裝完成後即要進行用戶組用戶的添加和相應密碼設置其操做比較繁雜可參照:http://blog.csdn.net/feier7501/article/details/19429607來進行.
1)建立DB2運行所需的組和用戶
[root@localhost server]# groupadd -g 901 db2grp [root@localhost server]# groupadd -g 902 db2fgrp [root@localhost server]# groupadd -g 903 db2agrp [root@localhost server]# useradd -g db2grp -u 801 -d /home/db2inst1 -m -s /bin/bash db2inst1 [root@localhost server]# useradd -g db2fgrp -u 802 -d /home/db2fenc -m -s /bin/bash db2fenc [root@localhost server]# useradd -g db2agrp -u 803 -d /home/db2das -m -s /bin/bash db2das
2)設置密碼
[root@localhost server]# passwd db2inst1 [root@localhost server]# passwd db2fenc [root@localhost server]# passwd db2das
3)建立實例
[root@localhost server]# cd /opt/ibm/db2/V9.7/instance [root@localhost instance]# ./dascrt -u db2das SQL4406W The DB2 Administration Server was started successfully. DBI1070I Program dascrt completed successfully. [root@localhost instance]# ./db2icrt -u db2inst1 db2inst1 DBI1070I Program db2icrt completed successfully.
4)啓動DB2
[root@localhost instance]# su - db2das [db2das@localhost ~]$ db2admin start SQL4409W The DB2 Administration Server is already active. [db2das@localhost ~]$ [db2das@localhost ~]$ su - db2inst1 密碼: [db2inst1@localhost ~]$ db2start
5)配置網絡:(不進行配置也能夠本地使用,但可能出現遠程沒法鏈接數據庫的狀況)
db2inst1@localhost ~]$ db2 update dbm cfg using SVCENAME 50000 DB20000I The UPDATE DATABASE MANAGER CONFIGURATION command completed successfully. [db2inst1@localhost ~]$ db2set DB2COMM=TCPIP
6)建立數據庫
[db2inst1@localhost ~]$ db2 create database testdb DB20000I The CREATE DATABASE command completed successfully.
7)DB2自動啓動
[root@localhost ~]# cd /opt/ibm/db2/V9.7/instance/ [root@localhost instance]# ./db2iauto -on db2inst1
DB2表空間相關操做
1)經常使用表空間查詢語句
db2查看錶空間是否啓用自動調整大小(AUTORESIZE):
db2 get snapshot for tablespaces on sample (查看AUTORESIZE 屬性是否爲True)
db2查看錶空間頁大小:
db2pd -tablespaces -db testdb
db2查看錶空間詳細信息:
db2 get snapshot for tablespaces on testdb
2)DB2建立表空間
建立表空間步驟:
db2 "CREATE DATABASE testdb"//建立數據庫 db2 "CONNECT TO testdb"//鏈接到將要建立建立表空間的數據庫 db2 "LIST TABLESPACES"//查看該數據庫當前表空間狀況 db2 "CREATE BUFFERPOOL BP1 SIZE 2000 PAGESIZE 8K"//建立db2數據緩衝池(在建立表空間時要指定表空間緩衝池) db2 "CREATE TABLESPACE USERSPACE2 PAGESIZE 8K MANAGED BY Database USING (FILE'/home/db2inst1/db2inst1/NODE0000/TESTDB3/T0000002/C0000001.LRG' 10000) BUFFERPOOL BP1"//用特定的緩衝池建立表空間(表空間的PAGESIZE須與所使用的緩衝池的大小一致)
能夠參考http://www.ibm.com/developerworks/cn/data/library/techarticles/0212wieser/0212wieser.html進行相關學習設置。
3)相關優化操做
爲了使建立的表空間便於管理,通常會選擇啓用表空間自動調整大小功能
在建立 DMS 表空間以後,還可使用帶有 AUTORESIZE 子句的 ALTER TABLESPACE 語句來啓用或禁用自動調整大小功能:
ALTER TABLESPACE DMS1 AUTORESIZE YES ALTER TABLESPACE DMS1 AUTORESIZE NO
1.db2表空間設置AUTORESIZE爲「YES」
db2 "ALTER TABLESPACE USERSPACE2 AUTORESIZE YES"
2.db2表空間設置automatic storage 爲「YES」
db2 "alter tablespace USERSPACE2 managed by automatic storage"
3.使用 ALTER TABLESPACE 命令,在命令選項中制定 REBALANCE(經過第一步咱們已經將 DMS 轉換爲自動存儲表空間,但用戶之前定義的容器和自動存儲生成的容器是並存的,這並非咱們想要得結果。若是用戶忽略第二步,從此在使用 ALTER TABLESPACE 加 REDUCE 選項時,數據庫可能會刪除掉未使用的新增長的兩個自動存儲容器。因此咱們在轉換表空間之後必須執行第二步。第二步一般是個比較耗時的操做,這也是在線轉換表空間的代價。)
db2 alter tablespace USERSPACE2 rebalance
能夠參考http://www.ibm.com/developerworks/cn/data/library/techarticles/dm-1003liux/進行相關學習設置
DB2數據遷移相關操做
使用命令:db2move和db2look兩個命令
db2look:用於導出表結構和表間關係
db2move:用於導入導出數據
1.
db2 connect to testdb//鏈接要導出的數據庫
2.
db2look -d testdb -a -e -x -o db2look.sql//導出數據庫表結構和關係
或者
db2look -d dbname -e -a -x -i username -w password -o db2look.sql
3.
su db2inst1//切換到實例用戶下(若不切換可能由於數據庫讀取權限問題沒法導出數據)
4.
mkdir dataexport//新建目錄用於存放即將要導出的數據(導出數據表較多,建議創建目錄)
5.
db2move testdb export//導出數據庫數據
或者
db2move databasename export -u username -p
6.
db2 create database testdb4//新建要導入的數據庫
7.
db2 -tvf db2look.sql//執行db2look.sql導入表結構和關係(若目標數據庫和源數據庫名稱不一致,則須要修改腳本中CONNECT TO 後的數據庫名爲目標數據庫名)
8.
db2move testdb4 load//最後執行db2move load語句導入表數據(該命令要在第四步創建的文件夾下執行)
9.導入完成後測試執行查詢操做報錯:ERROR [57016] [IBM][DB2/LINUXX8664] SQL0668N Operation not allowed for reason code "1" on table "DB2INST1.CMS_AD". SQLSTATE=57016
產生這個錯誤的緣由是因爲:
SQL0668N當基礎表(或從屬表)處於檢查暫掛狀態時,不容許操做。
解釋: 當表處於檢查暫掛狀態時,可能有一行或多行違反了對數據定義的約
束。此表不能用於操做。若從屬表處於檢查暫掛狀態,則對不處於檢查暫掛
狀態的父表的操做也可能接收到此錯誤。
用戶響應: 執行帶有 IMMEDIATE CHECKED 選項的 SET INTEGRITY
語句,並確保數據符合對該表或從屬於它的表定義的全部約束。
在db2move過程當中會有些表由於檢查約束可能會處於暫掛狀態,須要執行SET INTEGRITY命令來恢復它的暫掛狀態。
錯誤處理方法:
1)
db2 "select tabname,status from syscat.tables where tabschema = CURRENT SCHEMA and status='C'"//列出當前鏈接到的實例數據庫中全部處於暫掛狀態的表。
2)
db2 "select 'db2 set integrity for '||tabschema||'.'||TABNAME||' FOREIGN KEY IMMEDIATE UNCHECKED' from syscat.tables where TABSCHEMA=CURRENT SCHEMA and STATUS='C'"//執行該命令會獲得多有將第一步中處於暫掛狀態的錶轉換成正常狀態的處理語句
示例執行完上述命令後會獲得以下結果:
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
db2 set integrity for DB2INST1.CMS_FRIENDLINK FOREIGN KEY IMMEDIATE UNCHECKED
db2 set integrity for DB2INST1.CMS_INFO_NODE FOREIGN KEY IMMEDIATE UNCHECKED
db2 set integrity for DB2INST1.CMS_NODE_ORG FOREIGN KEY IMMEDIATE UNCHECKED
db2 set integrity for DB2INST1.CMS_SCORE_ITEM FOREIGN KEY IMMEDIATE UNCHECKED
db2 set integrity for DB2INST1.CMS_USER_MEMBERGROUP FOREIGN KEY IMMEDIATE UNCHECKED
5 record(s) selected.
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
3)粘貼執行上述命令既可將處於暫掛("C")狀態的錶轉換爲正常(''N')狀態的表,這樣就能夠對錶進行正常操做了。
對於FOREIGN KEY IMMEDIATE UNCHECKED和IMMEDIATE CHECKED的解釋:
大多數資料上顯示都是使用db2 set integrity for table_name IMMEDIATE CHECKED,可是測試發現當遇到有外鍵關係的主副表時執行該語句時會對錶進行外鍵檢查,這樣就是的執行該語句的表的順序獲得了限制,實際操做起來比較麻煩,在批量執行第二部中的命令是會遇到錯誤這樣就可能要反覆執行第二步中的命令來反覆得到上一次執行設置過程當中有外鍵約束而爲成功設置狀態的表。對其再進行單獨的設置。
這就是SET INTEGRITY FOR employee, staff IMMEDIATE CHECKED INCREMENTAL所遇到的問題。
爲了不對 EMPLOYEE 表進行外鍵檢查,可使用 IMMEDIATE UNCHECKED 選項:
SET INTEGRITY FOR employee FOREIGN KEY IMMEDIATE UNCHECKED 網
使用IMMEDIATE UNCHECKED能夠避免對操做的table的外鍵檢查,能夠只執行一次批量命令就能夠設置徹底部須要設置的表的狀態,實際使用起來比較方便。
使用IBM Data Studio進行DB2數據庫管理
使用IBM Data Studio進行數據庫鏈接、新建數據庫、新建表、備份還原數據庫、建立自動備份管理等一些列的操做。
參考資料地址:
http://www.ibm.com/developerworks/cn/data/library/techarticle/dm-1209neir/(數據庫管理)
http://www.ibm.com/developerworks/cn/data/library/techarticles/dm-0904datastudiorecovery/(數據恢復)