日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

基于DB2及PHP的應(yīng)用系統(tǒng)跨平臺遷移詳細步驟(二)

瀏覽:59日期:2024-02-22 15:13:26

5.處理數(shù)據(jù)庫表中的自增字段

對于需要加載的含有自增字段的表,即該表的 ixf 數(shù)據(jù)文件中有自增列的值, 可以在 load 命令中加入如下參數(shù)控制自增字段值:1). modified by identityignore :加載的數(shù)據(jù)文件中有自增字段值,load 時忽略數(shù)據(jù)文件中自增字段值 ;

2). modified by identitymissing :加載的數(shù)據(jù)文件中沒有自增字段值,load 時自動生成自增字段值 ;

3). modified by identityoverride :加載的數(shù)據(jù)文件中有自增字段值,load 時使用數(shù)據(jù)文件中的自增字段值 。

為了使目標數(shù)據(jù)庫中含有自增字段的表中數(shù)據(jù)與源數(shù)據(jù)庫中的數(shù)據(jù)保持一致,本文實例中選擇使用 modified by identityoverride 參數(shù),在導(dǎo)入數(shù)據(jù)時使用數(shù)據(jù)文件中的自增字段值。讀者可以根據(jù)不同情況選擇適當?shù)目刂茀?shù)。

首先,在 srcdb1_tables.ddl 文件中查找所有包自增字段的表名 ( 含有 GENERATED ALWAYS AS IDENTITY 字段的表 ),然后在 srcdb1_load.sql 中將 modified by identityoverride 語句片段插入到這些含有自增字段的表所對應(yīng)的 load 命令行中。

清單8. load 腳本中自增字段處理

db2 load from test.ixf of ixf modified by identityoverride insert into TEST;

6.執(zhí)行導(dǎo)出腳本

執(zhí)行導(dǎo)出腳本,導(dǎo)出所有表的數(shù)據(jù) 。

# db2 -tvf srcdb1_export.sql

導(dǎo)出的表數(shù)據(jù)以 ixf 格式存放于當前路徑下。

7.保存腳本和數(shù)據(jù)文件

將所有 DDL 腳本以及數(shù)據(jù)文件 *.ixf 復(fù)制到目標系統(tǒng)所在站點。

LINUX 系統(tǒng)上的操作

1.通過命令行處理器(CLP)創(chuàng)建實例 SRCDB1:

# db2icrt SRCDB1

2.使用 CREATE DATABASE 命令創(chuàng)建數(shù)據(jù)庫 SRCDB1,創(chuàng)建必要的表空間及配置必要的數(shù)據(jù)庫參數(shù)。

# db2 create database SRCDB1

3.連接到數(shù)據(jù)庫 SRCDB1,執(zhí)行 srcdb1_tables.ddl 腳本創(chuàng)建緩沖池,表空間,UDF,表以及 Index,Sequence,視圖等數(shù)據(jù)庫對象。

# db2 connect to srcdb1

# db2 -tvf srcdb1_tables.ddl

4.進入到放置 .ixf 數(shù)據(jù)文件的目錄,執(zhí)行下面的命令導(dǎo)入表數(shù)據(jù)。

# db2 -tvf srcdb1_load.sql

5.使用 srcdb1_foriegnkeys.ddl,srcdb1_triggers.ddl ,srcdb1_procedures.ddl 腳本文件創(chuàng)建外鍵約束,觸發(fā)器和存儲過程。

# db2 -tvf srcdb1_foriegnkeys.ddl

# db2 -tvf srcdb1_triggers.ddl

# db2 -tvf srcdb1_procedures.ddl

成功完成上述步驟后,數(shù)據(jù)庫的遷移工作基本完成。

Apache 服務(wù)器與 php 的安裝和配置

Apache 服務(wù)器的安裝和配置

Apache HTTP 服務(wù)器是一個模塊化的軟件,管理員可以通過選擇服務(wù)器中包含的模塊進行功能增減。模塊可以在編譯時被靜態(tài)包含進httpd二進制文件,也可以編譯成獨立于httpd二進制文件的動態(tài)共享對象 (DSO)。DSO 模塊可以與服務(wù)器一起編譯,也可以用 Apache 擴展工具 (apxs) 單獨編譯。動態(tài)加載的方式相比靜態(tài)加載具有更高的靈活性。使用動態(tài)載入特性,Apache 服務(wù)器必須以動態(tài)共享對象(DSO,Dynamic Shared Object)的方式編譯。Apache 對 DSO 的支持,是基于一個叫 mod_so 的模塊來實現(xiàn)的,為支持動態(tài)加載方式,這個模塊必須預(yù)先被靜態(tài)編譯到內(nèi)核中。因此可以通過 mod_so 模塊檢測已安裝的 Apache 是否支持 DSO:

清單9. mod_so 模塊檢測

# $APACHEHOME/bin/httpd –l

Compiled in modules:

core.c

prefork.c

http_core.c

mod_so.c

如果在列出的模塊名中有 mod_so.c,則說明安裝的 Apache 已經(jīng)支持 DSO,否則需要重新編譯 Apache。Apache 的安裝和配置過程十分簡單,如下所示:

1.下載 httpd-2.0.54.tar.gz(http://httpd.apache.org/),并將其解壓到制定目錄

# tar zxvf httpd-2.0.54.tar.gz && cd httpd-2.0.54

2.編譯安裝 apache

# ./configure --prefix=/usr/local/apache2 --enable-module=so

-- prefix 指定 apache 的安裝路徑

--enable-module=so 將 so 模塊(mod_so)靜態(tài)編譯進 apache 服務(wù)器的內(nèi)核,以支持 DSO 模式

# make && make install

3. 啟動 apache

# ln -s /usr/local/apache2/bin/apachectl /sbin/apachectl

# apachectl start

php 的安裝和配置

在 php 的安裝和配置過程中,有兩個方面需要注意,首先是 php 與 apache http server 的結(jié)合,其次是 php 與 db2 數(shù)據(jù)源的連接。

在 Apache 環(huán)境下安裝 PHP 的時候,有三種安裝模式可供選擇:靜態(tài)模塊、動態(tài)模塊(DSO)和 CGI。建議以 DSO 模式安裝,這種模式的維護和升級都相對簡單,可以在無需重新編譯 Apache 的條件下,根據(jù)需求動態(tài)增加新功能模塊。當然,這樣做也會帶來一些運行效率上的下降,Apache 服務(wù)器在啟動時會慢約 20%。

PHP 連接 DB2 數(shù)據(jù)源同樣有三種方式 : unified ODBC driver、IBM_DB2 和 PDO(php data object)。

◆unified ODBC driver 是最早的 PHP 訪問數(shù)據(jù)庫的擴展模塊之一。從 DB2 v7.2 開始,unified ODBC driver 就支持對其的訪問。對所有支持 ODBC 的數(shù)據(jù)庫,unified ODBC driver 提供了統(tǒng)一的數(shù)據(jù)訪問接口。為了保證接口的一般性,unified ODBC driver 并未對不同類型的數(shù)據(jù)庫做特定的優(yōu)化。

◆IBM_DB2 是由 IBM 開發(fā)和維護的與 DB2 數(shù)據(jù)源交互的擴展模塊,它遵守開源協(xié)議。對基于 DB2 UDB 和 php 4.x 的應(yīng)用來說,IBM_DB2 是最優(yōu)的選擇,因為它針對 DB2 UDB 進行了優(yōu)化,同時避免了一些使用 unified ODBC driver 時可能存在的兼容性問題。不過,IBM_DB2 只支持 DB2 v8.2.2 或更高版本。

◆PDO 則是 php 5.x 中即將支持的新的數(shù)據(jù)庫訪問方式。本文中,由于源數(shù)據(jù)庫與目標數(shù)據(jù)庫的版本均為 DB2 v8.1,并且源環(huán)境中采用 unified ODBC driver 的方式,為了保持環(huán)境配置的一致性,仍然選擇 unified ODBC driver 作為 php 與數(shù)據(jù)源的訪問接口。

PHP 的安裝與配置過程具體如下:

1.下載并解壓 php-4.4.4.tar.gz(http://www.php.net/)

# tar zxvf php-4.4.4.tar.gz

# cd php-4.4.4

2.配置編譯 php 源代碼

# ./configure --prefix=/usr/local/php --with-apxs2=/usr/sbin/apxs --without-mysql --with-ibm-db2=/home/reportdb/sqllib

--prefix 指定 php 的安裝路徑

--with-apxs2 指定 apxs 程序的路徑 (apxs 是一個 perl 腳本,它可以脫離 apache 的源碼將 php 模塊編譯成 DSO 文件 )

--with-ibm-db2 指定 unified ODBC driver 作為 php 與數(shù)據(jù)源的訪問接口,并指定 DB2 的實例安裝目錄。

--without-mysql 忽略 mysql 數(shù)據(jù)庫缺省的安裝配置

#cp php.ini-dist /usr/local/lib

將 php 安裝文件中的 php.ini-dist 拷貝到 /usr/local/lib 下作為 php 的配置文件。

# make && make install

# cp php.ini-dist /usr/local/lib/php.ini

3.編輯 /usr/local/apache2/conf/httpd.conf 文件,做如下修改:

設(shè)置 html 文件主目錄:用于存放網(wǎng)站所需 web 文件的主目錄

DocumentRoot '/home/web/www/'

設(shè)置 apache 的默認文件名的次序: apache 將按照由前至后的順序在當前路徑下查找其所支持的默認主頁文件

DirectoryIndex index.php index.html.var index.cgi index.html

添加 php 解釋文件后綴:對于所有需要被 PHP 解釋的文件類型,需要將后綴添加至 AddType 配置項

AddType application/x-httpd-php .php .inc

加載 PHP 模塊:加載模塊目錄 modules 下的庫 libphp4.so,并將模塊結(jié)構(gòu)名 php4_module 添加到活動模塊列表中

LoadModule php4_module modules/libphp4.so

4.編輯配置文件 /usr/local/apache2/bin/apachectl :

為保證與 DB2 數(shù)據(jù)庫的連通,啟動 Apache 服務(wù)時,需要同時初始化 DB2 客戶機實例環(huán)境。創(chuàng)建 DB2 實例時,DB2 會自動生成 shell 腳本用于初始化所需的 DB2 實例環(huán)境,只需直接調(diào)用即可:

if test -f /home/reportdb/sqllib/db2profile; then

. /home/reportdb/sqllib/db2profile

fi

5.然后,重新啟動 Apache 服務(wù)器以繼承上面的配置更改。

# apachectl restart

6.編寫 PHP 的測試文件 test.php,內(nèi)容如下:

echo phpinfo();?>

將其存放在 apache 的 html 文件主目錄 /home/web/www 下,通過瀏覽器訪問該網(wǎng)頁,若能正常訪問(如下圖所示),則配置工作全部完成。

結(jié)束語

本文主要涵蓋了一個基于 php 和 DB2 UDB 的應(yīng)用系統(tǒng)的跨平臺移植過程,詳細介紹了 DB2 數(shù)據(jù)庫系統(tǒng)的跨平臺遷移以及 Apache 服務(wù)器與 php 應(yīng)用系統(tǒng)的安裝和配置過程。基于實踐經(jīng)驗,為 DB2 數(shù)據(jù)庫系統(tǒng)的跨平臺遷移問題提供了一個可行的解決方案。對于移植過程中可能出現(xiàn)的問題,本文也給予詳細的描述并提供相應(yīng)的解決方案。雖然本文所涉及的只是從 AIX 系統(tǒng)到 LINUX 系統(tǒng)的應(yīng)用系統(tǒng)移植過程,讀者亦可以參考具體的移植過程,將其應(yīng)用于其它平臺之上。

標簽: PHP
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
美女久久久久| 国产精品一卡| 国产精品115| 日韩制服丝袜av| 久久国产乱子精品免费女| 在线观看免费一区二区| 国产日韩一区二区三区在线播放 | 激情婷婷久久| 今天的高清视频免费播放成人| 国产一区二区精品福利地址| 高清不卡亚洲| 日本在线成人| 亚洲久草在线| 欧美在线91| 国产麻豆一区二区三区精品视频| 日韩av资源网| 国产欧美一区| 精品一区二区三区在线观看视频| 欧美三级第一页| 久久亚洲资源中文字| 亚洲精品美女91| 国产精品老牛| 日韩精品国产欧美| 精品国产亚洲一区二区三区| 日韩欧美网址| 亚洲一区观看| 中文字幕免费精品| 欧美激情五月| 欧美日韩一区二区综合| 久久大逼视频| 日韩中文字幕| 日韩高清国产一区在线| 日产欧产美韩系列久久99| 欧美黑人巨大videos精品| 伊人久久视频| 欧洲亚洲一区二区三区| 丝袜a∨在线一区二区三区不卡| 日韩欧美中文字幕一区二区三区 | 久久久久免费| 国产偷自视频区视频一区二区| 亚洲va久久久噜噜噜久久| 麻豆精品视频在线观看| 三级小说欧洲区亚洲区| 亚洲精品第一| 久久久久久免费视频| 久久福利一区| 色乱码一区二区三区网站| 久久理论电影| 91亚洲无吗| 日韩精品三级| 婷婷综合六月| 久久国产乱子精品免费女| 久久精品国产68国产精品亚洲| 日本成人手机在线| 久久高清免费| 久久三级毛片| 久久国内精品| 亚洲理论在线| 久久亚洲在线| 91嫩草亚洲精品| 国产精品一级| 日本高清久久| 国模 一区 二区 三区| 国产精品亚洲综合久久| 最新国产精品| 免费在线看一区| 樱桃成人精品视频在线播放| 国产一区二区三区四区| 国产精品久久久久77777丨| 亚洲综合激情在线| 精品一区二区三区免费看| 99久精品视频在线观看视频| 国产高清亚洲| 国产精品欧美一区二区三区不卡| 中文无码日韩欧| 亚洲精品欧美| av成人国产| 欧美jjzz| 国产91久久精品一区二区| 成人日韩在线| 日本高清不卡一区二区三区视频| 成人午夜亚洲| 吉吉日韩欧美| 久久中文字幕av一区二区不卡| 日本在线啊啊| 国产精品97| 亚洲一级淫片| 国产精品久久久久久妇女| 国产精品4hu.www| 中文字幕在线看片| 亚洲啊v在线| 99riav1国产精品视频| 欧美激情亚洲| 婷婷亚洲五月| 一区在线观看| 亚洲乱码视频| 天堂√中文最新版在线| 午夜久久免费观看| 亚洲一区欧美| 精品视频在线你懂得| 欧洲一区二区三区精品| 亚洲精品电影| 久久国产人妖系列| 国产成年精品| 99riav国产精品| 欧美激情视频一区二区三区在线播放| 久久婷婷国产| 91精品久久久久久久久久不卡| 亚洲欧美日韩专区| 欧美经典一区| 国产精品久久久久久久免费观看| 在线视频观看日韩| 日韩av在线播放中文字幕| 成人在线免费观看91| 久久一二三区| 欧美成人aaa| 精品视频在线一区二区在线| 午夜av一区| 福利片在线一区二区| 免费看的黄色欧美网站| 国产理论在线| 国产免费播放一区二区| 欧美手机在线| 国产精品第一国产精品| 日韩一级精品| 国产麻豆久久| 最近高清中文在线字幕在线观看1| 日韩av网站在线观看| 午夜久久美女| 亚洲国内欧美| 亚洲永久av| 风间由美中文字幕在线看视频国产欧美 | 国产成人久久精品麻豆二区| 成人在线视频免费| 国产日韩欧美一区| 麻豆91精品| 啪啪国产精品| 国产精品婷婷| av高清不卡| 亚洲3区在线| 中文字幕在线视频网站| 色婷婷色综合| 伊人精品一区| 欧美中文字幕| 国产麻豆精品| 成人午夜网址| 爽好久久久欧美精品| 视频一区日韩精品| 国产精品黄网站| 久久婷婷一区| 中文在线一区| 18国产精品| 丝袜美腿诱惑一区二区三区| 一区在线免费观看| 国产欧美在线观看免费| 蜜臀久久精品| 亚洲精品影视| 亚洲最新无码中文字幕久久| 欧美一级专区| 成人在线丰满少妇av| 亚洲欧美日韩视频二区| 日韩毛片一区| 999久久久免费精品国产| 日本vs亚洲vs韩国一区三区二区| 色婷婷色综合| 亚洲色图网站| 四虎国产精品免费观看| 日本aⅴ亚洲精品中文乱码| 欧美久久天堂| 欧美激情三区| 日韩国产一二三区| 日韩精品久久久久久久电影99爱| 日本不卡一区二区三区| 婷婷激情一区| 国产精品美女在线观看直播| 视频福利一区| 日韩成人a**站| 国产精品免费大片| 亚洲啊v在线免费视频| 亚洲精品中文字幕乱码| 88xx成人免费观看视频库| 欧美一级网站| 视频一区日韩| 蜜臀av一区二区在线免费观看| 国内亚洲精品| 国产第一亚洲| 精品91福利视频| 麻豆成人在线观看| 国产精品一区二区三区美女| 色综合视频一区二区三区日韩| 亚洲精品一二三区区别| 久久久久久黄| 国产99久久| 蜜桃一区二区三区| 99精品在线| 亚洲国产日韩欧美在线| 国产成人久久精品麻豆二区| 国产精品久久777777毛茸茸| 蜜臀va亚洲va欧美va天堂 | 韩日一区二区|