db2set db2codepage=819
db2 create database test03
db2 connect to test03 user db2amdin using 1
db2 CREATE Bufferpool USER8 SIZE 100000 PAGESIZE 8K
db2 CREATE Bufferpool USER16 SIZE 1000 PAGESIZE 16 K
db2 CREATE Bufferpool USER32 SIZE 1000 PAGESIZE 32 K
db2stop force
db2start
db2 connect to test03 user easymis using easymis
db2 "CREATE REGULAR TABLESPACE TS_USER8 PAGESIZE 8K MANAGED BY SYSTEM USING ('FSMS_8K_1') BUFFERPOOL USER8"
db2 "CREATE REGULAR TABLESPACE TS_USER16 PAGESIZE 16K MANAGED BY SYSTEM USING ('FSMS_16K_1') BUFFERPOOL USER16"
db2 "CREATE REGULAR TABLESPACE TS_USER32 PAGESIZE 32K MANAGED BY SYSTEM USING ('FSMS_32K_1') BUFFERPOOL USER32"
db2 GRANT DBADM,CREATETAB,BINDADD,CONNECT ON DATABASE TO USER EASYMIS
db2 GRANT DBADM,CREATETAB,BINDADD,CONNECT,LOAD ON DATABASE TO USER EASYMIS
db2 connect to test03 user easymis using easymis
db2 -f dbstruct.sql >kk.log
db2 create database test03
db2 connect to test03 user db2amdin using 1
db2 CREATE Bufferpool USER8 SIZE 100000 PAGESIZE 8K
db2 CREATE Bufferpool USER16 SIZE 1000 PAGESIZE 16 K
db2 CREATE Bufferpool USER32 SIZE 1000 PAGESIZE 32 K
db2stop force
db2start
db2 connect to test03 user easymis using easymis
db2 "CREATE REGULAR TABLESPACE TS_USER8 PAGESIZE 8K MANAGED BY SYSTEM USING ('FSMS_8K_1') BUFFERPOOL USER8"
db2 "CREATE REGULAR TABLESPACE TS_USER16 PAGESIZE 16K MANAGED BY SYSTEM USING ('FSMS_16K_1') BUFFERPOOL USER16"
db2 "CREATE REGULAR TABLESPACE TS_USER32 PAGESIZE 32K MANAGED BY SYSTEM USING ('FSMS_32K_1') BUFFERPOOL USER32"
db2 GRANT DBADM,CREATETAB,BINDADD,CONNECT ON DATABASE TO USER EASYMIS
db2 GRANT DBADM,CREATETAB,BINDADD,CONNECT,LOAD ON DATABASE TO USER EASYMIS
db2 connect to test03 user easymis using easymis
db2 -f dbstruct.sql >kk.log
用配置助手增加odbc和cli的命令,並且將使用者密碼配置進去
用odbctool將資料一次性載入到資料庫中。
配置jdbc連接
直接使用jcc方式能夠使用。
<property name="dialect">org.hibernate.dialect.DB2Dialect</property>
<property name="connection.driver_class">com.ibm.db2.jcc.DB2Driver</property>
<property name="connection.username">easymis</property>
<property name="connection.password">1</property>
<property name="connection.url">jdbc:db2://192.168.20.249:50000/test03</property>
用odbctool將資料一次性載入到資料庫中。
配置jdbc連接
直接使用jcc方式能夠使用。
<property name="dialect">org.hibernate.dialect.DB2Dialect</property>
<property name="connection.driver_class">com.ibm.db2.jcc.DB2Driver</property>
<property name="connection.username">easymis</property>
<property name="connection.password">1</property>
<property name="connection.url">jdbc:db2://192.168.20.249:50000/test03</property>
如果採用app方式,需要將db2java.zip修改成db2java.jar
db2jdbcbind -url jdbc:db2://192.168.20.249:50000/test03 -user easymis -password 1
<property name="dialect">net.sf.hibernate.dialect.DB2Dialect</property>
<property name="connection.driver_class">COM.ibm.db2.jdbc.app.DB2Driver</property>
<property name="connection.username">easymis</property>
<property name="connection.password">1</property>
<property name="connection.url">jdbc:db2:test03</property>
db2jdbcbind -url jdbc:db2://192.168.20.249:50000/test03 -user easymis -password 1
<property name="dialect">net.sf.hibernate.dialect.DB2Dialect</property>
<property name="connection.driver_class">COM.ibm.db2.jdbc.app.DB2Driver</property>
<property name="connection.username">easymis</property>
<property name="connection.password">1</property>
<property name="connection.url">jdbc:db2:test03</property>
--------------------------------------------------------------------------------------
三、aix下面創建過程
aix下面創建完整的過程
db2set db2codepage=819
db2 create database easytest on /home/db2inst1
db2 connect to test04 user db2inst1 using db2
db2 CREATE Bufferpool USER8 SIZE 100000 PAGESIZE 8K
db2 CREATE Bufferpool USER16 SIZE 1000 PAGESIZE 16 K
db2 CREATE Bufferpool USER32 SIZE 1000 PAGESIZE 32 K
db2stop force
db2start
db2 connect to test04 user db2inst1 using db2
db2 "CREATE REGULAR TABLESPACE TS_USER8 PAGESIZE 8K MANAGED BY SYSTEM USING ('FSMS_8K_1') BUFFERPOOL USER8"
db2 "CREATE REGULAR TABLESPACE TS_USER16 PAGESIZE 16K MANAGED BY SYSTEM USING ('FSMS_16K_1') BUFFERPOOL USER16"
db2 "CREATE REGULAR TABLESPACE TS_USER32 PAGESIZE 32K MANAGED BY SYSTEM USING ('FSMS_32K_1') BUFFERPOOL USER32"
db2 CREATE Bufferpool TMPBUF8 SIZE 10000 PAGESIZE 8K
db2 "CREATE TEMPORARY TABLESPACE TempTS_USER8 PAGESIZE 8K MANAGED BY SYSTEM USING ('/home/db2inst1/db2inst1/TEMPNODE0004' ) EXTENTSIZE 16 OVERHEAD 10.5 PREFETCHSIZE 16 TRANSFERRATE 0.14 BUFFERPOOL "TMPBUF8" DROPPED TABLE RECOVERY OFF"
db2 GRANT DBADM,CREATETAB,BINDADD,CONNECT,LOAD ON DATABASE TO USER EASYMIS
db2 GRANT USE OF TABLESPACE TS_USER8 TO easymis
db2 GRANT USE OF TABLESPACE TS_USER16 TO easymis
db2 GRANT USE OF TABLESPACE TS_USER32 TO easymis
db2 connect to test04 user easymis using easymis
db2 -f dbstruct.sql >kk.log
三、aix下面創建過程
aix下面創建完整的過程
db2set db2codepage=819
db2 create database easytest on /home/db2inst1
db2 connect to test04 user db2inst1 using db2
db2 CREATE Bufferpool USER8 SIZE 100000 PAGESIZE 8K
db2 CREATE Bufferpool USER16 SIZE 1000 PAGESIZE 16 K
db2 CREATE Bufferpool USER32 SIZE 1000 PAGESIZE 32 K
db2stop force
db2start
db2 connect to test04 user db2inst1 using db2
db2 "CREATE REGULAR TABLESPACE TS_USER8 PAGESIZE 8K MANAGED BY SYSTEM USING ('FSMS_8K_1') BUFFERPOOL USER8"
db2 "CREATE REGULAR TABLESPACE TS_USER16 PAGESIZE 16K MANAGED BY SYSTEM USING ('FSMS_16K_1') BUFFERPOOL USER16"
db2 "CREATE REGULAR TABLESPACE TS_USER32 PAGESIZE 32K MANAGED BY SYSTEM USING ('FSMS_32K_1') BUFFERPOOL USER32"
db2 CREATE Bufferpool TMPBUF8 SIZE 10000 PAGESIZE 8K
db2 "CREATE TEMPORARY TABLESPACE TempTS_USER8 PAGESIZE 8K MANAGED BY SYSTEM USING ('/home/db2inst1/db2inst1/TEMPNODE0004' ) EXTENTSIZE 16 OVERHEAD 10.5 PREFETCHSIZE 16 TRANSFERRATE 0.14 BUFFERPOOL "TMPBUF8" DROPPED TABLE RECOVERY OFF"
db2 GRANT DBADM,CREATETAB,BINDADD,CONNECT,LOAD ON DATABASE TO USER EASYMIS
db2 GRANT USE OF TABLESPACE TS_USER8 TO easymis
db2 GRANT USE OF TABLESPACE TS_USER16 TO easymis
db2 GRANT USE OF TABLESPACE TS_USER32 TO easymis
db2 connect to test04 user easymis using easymis
db2 -f dbstruct.sql >kk.log
設置堆空間大小
DB2 UPDATE DB CFG FOR DBNAME USING APPLHEAPSZ 512
四、資料庫導入匯出
1、資料庫卸載
db2move test04 EXPORT
db2look -d easytest -e -a -o easytest.sql
將test04.sql中的視圖部分截出來view.sql
1、資料庫卸載
db2move test04 EXPORT
db2look -d easytest -e -a -o easytest.sql
將test04.sql中的視圖部分截出來view.sql
2、資料庫裝載
db2move easytest import -l /home/db2inst1/wk/test04
db2move easytest import -l /home/db2inst1/wk/test04
db2 -tvf db2look.sql
3、資料庫整體移植過程。
五、用戶端安裝
用戶端綁定(v8)
sqllib/bin: db2jdbcbind -url jdbc:db2://192.168.20.249:50000/easyccp -user easymis -password 1
用戶端綁定(v8)
sqllib/bin: db2jdbcbind -url jdbc:db2://192.168.20.249:50000/easyccp -user easymis -password 1
六、常用命令:
1. LIST DATABASE DIRECTORY:列出所有的實例
db2 list database directory | pg
2。 連接資料庫
db2 “connect to test04 user easymis using easymis”
斷開連接
db2 connec reset
2. 停止db2
db2 terminate
db2stop force
db2 stop database manager
3. 啟動db2
db2start
4. 連接db2實例 db2 connect to 資料庫別名 user 使用者 using 密碼
5. 列出db2實例名:db2ilist
6. 查看db2的遠端、本地字元集
db2 -a connect to easyoa4
7. 設置當前的schema
db2 set schema=easymis
8. 設置字元集
db2set db2codepage=819 英文, 1386對應GBK
9. db2 -f wk.sql 執行一個sql語句
db2 list database directory | pg
2。 連接資料庫
db2 “connect to test04 user easymis using easymis”
斷開連接
db2 connec reset
2. 停止db2
db2 terminate
db2stop force
db2 stop database manager
3. 啟動db2
db2start
4. 連接db2實例 db2 connect to 資料庫別名 user 使用者 using 密碼
5. 列出db2實例名:db2ilist
6. 查看db2的遠端、本地字元集
db2 -a connect to easyoa4
7. 設置當前的schema
db2 set schema=easymis
8. 設置字元集
db2set db2codepage=819 英文, 1386對應GBK
9. db2 -f wk.sql 執行一個sql語句
10、 db2 GET DATABASE MANAGER CONFIGURATION獲取db2的系統資訊。
11、 drop
database test04
12、 刪除表空間、刪除緩衝集區
db2 drop tablespace TS_USER32
db2 drop bufferpool USER32
12、 查詢錯誤的方式
db2 ? sql0102
db2 drop tablespace TS_USER32
db2 drop bufferpool USER32
12、 查詢錯誤的方式
db2 ? sql0102
1、首先,查看需要使用的實例資料庫有哪些:
db2ilist 查看實例
db2 list database directory | pg 查看實例上面的所有資料庫
db2ilist 查看實例
db2 list database directory | pg 查看實例上面的所有資料庫
2、drop資料庫的命令
db2 drop database 資料庫名
db2 drop database 資料庫名
3、在aix環境上創建空資料庫(資料庫名不能夠超過8個字元)
查看環境變數 db2set
如果發現db2set中db2codepage不是819,執行 db2set db2codepage=819
db2 create database test05 on /home/db2inst1
db2 connect to test05 user db2inst1 using db2
查看環境變數 db2set
如果發現db2set中db2codepage不是819,執行 db2set db2codepage=819
db2 create database test05 on /home/db2inst1
db2 connect to test05 user db2inst1 using db2
#創建對應pagesize大小的緩衝集區和表空間
db2 CREATE Bufferpool USER8 SIZE 1000 PAGESIZE 8K
db2 CREATE Bufferpool USER16 SIZE 1000 PAGESIZE 16 K
db2 CREATE Bufferpool USER32 SIZE 1000 PAGESIZE 32 K
db2stop force ( 可以先用:db2stop 、db2 terminate進行停止)
db2start
db2 connect to test05 user db2inst1 using db2
db2 "CREATE REGULAR TABLESPACE TS_USER8 PAGESIZE 8K MANAGED BY SYSTEM USING ('FSMS_8K_1') BUFFERPOOL USER8"
db2 "CREATE REGULAR TABLESPACE TS_USER16 PAGESIZE 16K MANAGED BY SYSTEM USING ('FSMS_16K_1') BUFFERPOOL USER16"
db2 "CREATE REGULAR TABLESPACE TS_USER32 PAGESIZE 32K MANAGED BY SYSTEM USING ('FSMS_32K_1') BUFFERPOOL USER32"
db2 CREATE Bufferpool USER8 SIZE 1000 PAGESIZE 8K
db2 CREATE Bufferpool USER16 SIZE 1000 PAGESIZE 16 K
db2 CREATE Bufferpool USER32 SIZE 1000 PAGESIZE 32 K
db2stop force ( 可以先用:db2stop 、db2 terminate進行停止)
db2start
db2 connect to test05 user db2inst1 using db2
db2 "CREATE REGULAR TABLESPACE TS_USER8 PAGESIZE 8K MANAGED BY SYSTEM USING ('FSMS_8K_1') BUFFERPOOL USER8"
db2 "CREATE REGULAR TABLESPACE TS_USER16 PAGESIZE 16K MANAGED BY SYSTEM USING ('FSMS_16K_1') BUFFERPOOL USER16"
db2 "CREATE REGULAR TABLESPACE TS_USER32 PAGESIZE 32K MANAGED BY SYSTEM USING ('FSMS_32K_1') BUFFERPOOL USER32"
#創建臨時表空間(用於緩衝查詢結果或者臨時表)
db2 CREATE Bufferpool TMPBUF8 SIZE 10000 PAGESIZE 8K
db2 "CREATE TEMPORARY TABLESPACE TempTS_USER8 PAGESIZE 8K MANAGED BY SYSTEM USING ('/home/db2inst1/db2inst1/TEMPNODE0005' ) EXTENTSIZE 16 OVERHEAD 10.5 PREFETCHSIZE 16 TRANSFERRATE 0.14 BUFFERPOOL "TMPBUF8" DROPPED TABLE RECOVERY OFF"
db2 CREATE Bufferpool TMPBUF8 SIZE 10000 PAGESIZE 8K
db2 "CREATE TEMPORARY TABLESPACE TempTS_USER8 PAGESIZE 8K MANAGED BY SYSTEM USING ('/home/db2inst1/db2inst1/TEMPNODE0005' ) EXTENTSIZE 16 OVERHEAD 10.5 PREFETCHSIZE 16 TRANSFERRATE 0.14 BUFFERPOOL "TMPBUF8" DROPPED TABLE RECOVERY OFF"
#給相關用戶付許可權
db2 GRANT DBADM,CREATETAB,BINDADD,CONNECT,LOAD ON DATABASE TO USER EASYMIS
db2 GRANT USE OF TABLESPACE TS_USER8 TO easymis
db2 GRANT USE OF TABLESPACE TS_USER16 TO easymis
db2 GRANT USE OF TABLESPACE TS_USER32 TO easymis
db2 GRANT DBADM,CREATETAB,BINDADD,CONNECT,LOAD ON DATABASE TO USER EASYMIS
db2 GRANT USE OF TABLESPACE TS_USER8 TO easymis
db2 GRANT USE OF TABLESPACE TS_USER16 TO easymis
db2 GRANT USE OF TABLESPACE TS_USER32 TO easymis
#開始創建表、創建(這種方式是直接創建表、視圖的方式,如果採用db2move的方式,那麼則不需要)
db2 connect to test05 user easymis using easymis
db2 -f dbstruct.sql >crttab.log
db2 -f view.sql >crtviw.log
db2 connect to test05 user easymis using easymis
db2 -f dbstruct.sql >crttab.log
db2 -f view.sql >crtviw.log
#恢復db2move備份的資料庫(備份的過程參見後面的db2move的說明)
db2move test05 import -l /home/db2inst1/wk/test04
db2 -tvf view.sql >crtview.log #如果腳本是db2look,命令結束符為分號,行結束無特殊符號
db2move test05 import -l /home/db2inst1/wk/test04
db2 -tvf view.sql >crtview.log #如果腳本是db2look,命令結束符為分號,行結束無特殊符號
db2 UPDATE DB CFG FOR easytest USING APPLHEAPSZ 1024
4、對陽江資料庫做一個備份,便於恢復。
一、informix和db2的區別
從informix到db2
1、視圖的修改:DATE函數不能夠使用,可以拿來做比較
2、NVL函數不能夠使用,COALESCE
3、TODAY 對應 CURRENT DATE
4、DATE函數的用法相同
5、資料類型不同不能夠相等。v_tjfx_gxck, 總帳的科目好為整型, 用char()函數進行轉換
6、db2 7.2版本 blob欄位必須要有長度。
7、日期天數的差異要用 days(日期2)-days(日期1)
發現value欄位存在在BP_PROCESSDATA中。
SPOOL 表的MESSAGE_BODY blob欄位,blob欄位的大小需要限制。需要手工增加大小
INBOXES 表的MESSAGE_BODY
S_PRINTCFG 表
從informix到db2
1、視圖的修改:DATE函數不能夠使用,可以拿來做比較
2、NVL函數不能夠使用,COALESCE
3、TODAY 對應 CURRENT DATE
4、DATE函數的用法相同
5、資料類型不同不能夠相等。v_tjfx_gxck, 總帳的科目好為整型, 用char()函數進行轉換
6、db2 7.2版本 blob欄位必須要有長度。
7、日期天數的差異要用 days(日期2)-days(日期1)
發現value欄位存在在BP_PROCESSDATA中。
SPOOL 表的MESSAGE_BODY blob欄位,blob欄位的大小需要限制。需要手工增加大小
INBOXES 表的MESSAGE_BODY
S_PRINTCFG 表
1、欄位類型對應
1)char全部換成varchar
2)datetime year to second 到 date timestamp
3)decimal不能夠超過30
4) byte 到 blob
1)char全部換成varchar
2)datetime year to second 到 date timestamp
3)decimal不能夠超過30
4) byte 到 blob
應用移植到db2 v8.2的內容:
1、將對應版本的db2的jdbc驅動拷貝到應用的lib目錄。
2、修改ptconfig.xml中的
CHARACTERSET:ISO8859-1
<DRIVER>com.ibm.db2.jcc.DB2Driver</DRIVER>
<URL>jdbc:db2://192.168.20.249:50000/easyccp</URL>
<DBTYPE>db2</DBTYPE>
<CONNECTTYPE>1</CONNECTTYPE>
沒有留言:
張貼留言