久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁技術文章
文章詳情頁

講解主機DB2 9存儲過程的規劃和實施技巧

瀏覽:87日期:2023-11-09 19:32:52

本文主要介紹主機 DB2 上的存儲過程的規劃和實施經驗,幫助用戶了解主機 DB2 上的存儲過程的基本特點及其如何進行分類實施。

隨著主機 DB2 技術的發展,DB2 產品的功能越來越豐富,以及 DB2 產品增強了對其分布式訪問功能,所以正確配置 DB2 產品提供的存儲過程,就越來越重要。對現在的主機數據庫用戶來說,DB2 9 for z/OS 下的存儲過程已經從一個可選項逐漸演變成了在數據庫應用開發考慮的重要因素。在主機數據庫存儲過程的應用方面,除了用戶可以根據需要開發存儲過程外。主機數據庫產品也提供了功能豐富的各類存儲過程供用戶使用。本篇就是為了幫助主機系統和開發人員更好的規劃和實施基于主機數據庫(DB2 for z/OS)的存儲過程。

DB2 版本 9 以后,主機上所有的存儲過程都統一由 z/OS 的一個子系統 WLM 來統一管理,WLM 是通過應用環境(Application Environment)來管理存儲過程的,當存儲過程被調用時,WLM 會自動啟動和應用環境相應的啟動作業來管理和實現所需要的存儲過程功能。

我們可以把數據庫存儲過程分為 DB2 系統產品數據庫存儲過程和用戶開發的存儲過程。關于 DB2 數據庫系統產品的存儲過程,按照存儲過程的功能,開發語言,性能要求等,我們會設置不同的數據庫存儲過程運行環境。下面的篇幅會面較詳細的介紹這方面的情況。對于用戶編寫的存儲過程,存儲過程配置基本原則是一樣,都需要根據實際應用開發功能和性能的要求進行規劃實施,都需要根據具體要求進行具體分析,這里不再做主要描述。

存儲過程的客戶化規劃和實施

在實施主機提供的 DB2 存儲過程的時候,就象上文提到的,需要考慮到存儲過程調用時的執行要求,這些要求包括存儲過程執行的功能是怎么樣的,調用時限定條件以及存儲過程有無特殊性能要求等。正確配置 DB2 存儲過程,以下幾個方面是比較重要而應該被重點關注的:

同存儲過程相關的 DB2 子系統配置

由于 DB2 9 產品發布后,包括針對存儲過程在內一些新的功能增強,DB2 系統都是通過實施 PTF 或 APAR 的方式來實現的,所以需要確認相關的數據庫產品的 PTF 或 APAR 是否已經正確實施。具體需要實施的 PTF 或 APAR 可以參考相關的資料。

在 DB2 9 的安裝流程里,安裝界面 Panel DSNTIPX 是來配置和存儲過程相關的參數的,是用來生成安裝所需要的 Sample 作業。

清單 1. DB2 9 安裝界面 DSNTIPX

DSNTIPX INSTALL DB2 - ROUTINE PARAMETERS

===>

Scrolling backward may change fields marked with asterisks

Enter data below:

* 1 WLM PROC NAME ===> DSN1WLM WLM-established stored procedure JCL PROC

2 NUMBER OF TCBS ===> 8 Number of concurrent TCBs (1-100)

3 MAX ABEND COUNT ===> 0 Allowable ABENDs for a procedure (0-255)

4 TIMEOUT VALUE ===> 180 Seconds to wait before SQL CALL or

function invocation fails (5-1800,NOLIMIT)

5 WLM ENVIRONMENT ===> Default WLM env name

6 MAX OPEN CURSORS ===> 500 Maximum open cursors per thread

7 MAX STORED PROCS ===> 2000 Maximum active stored procs per thread

其中,對于 DSNTIPX 所涉及到的參數,下面做一個簡要的描述:

◆WLM PROC NAME

用來指定在安裝過程中生成 Sample 中作業的缺省存儲過程的名字。

◆NUMBER OF TCBS

用來指定在 WLM 啟動的一個地址空間里,可以并發調用多少個存儲過程。這個值也受到 USS 下的 MAXPROCUSER(每一個用戶在主機 USS 環境下最大可以有多少個 processes)參數的限制。

◆MAX ABEND COUNT

在 DSNZPARM 里對應的參數是 STORMXAB,用來指定存儲過程可以有多少次調用失敗后,整個調用結束。缺省值為 0,意味著在存儲過程第一次執行不正常結束時,存儲過程調用結束。

◆TIMEOUT VALUE

對應的 DSNZPARM 參數是 STORTIME。用來指定在存儲過程地址空間里,DB2 容許等待存儲過程分配 TCB 的時間,單位為秒。如果在這個時間段內沒有被分配一個 TCB 來執行,存儲過程調用失敗。推薦不要設為 NOLIMIT,因為如果設為 NOLIMIT,當出現異常例如存儲過程地址空間被關掉,存儲過程調用請求會一直等待分配 TCB,直到條件滿足或者 thread 被取消。

◆WLM ENVIRONMENT

對應的 DSNZPARM 參數為 WLMENV,用來指定在定義存儲過程時,如果沒有指定 WLM_ENVIRONMENT 的值時,系統會自動分配的 WLM 應用環境的名字。

◆MAX OPEN CURSORS

對應的 DSNZPARM 參數是 MAX_NUM_CUR,用來指定每一個 DB2 應用 thread 最大可以打開的 cursors 數量

◆MAX STORED PROCS

對應的 DSNZPARM 參數是 MAX_ST_PROC。用來設定 DB2 應用 thread 可以調用的最大存儲過程數量。在每一次 COMMIT 后,重新開始記數。

主機 WLM 應用環境的規劃和實施

DB2 9 之后,所有的存儲過程都運行在 WLM 應用環境管理之下,由于主機數據庫下存儲過程數量較多,我們在定制的時候,需要把具有類似屬性的存儲過程定義在一個應用環境下。目的是最大限度的減少 WLM 應用環境的定義數量。當然如果你只是客戶化少量的存儲過程或者是對某些存儲過程有一些特定的要求,例如性能或存儲等,也可以定義粒度更小的 WLM 應用環境。另外在一些存儲過程里所涉及的數據集里,有一些是需要具有 APF 屬性的,需要特別注意。以下為一個 WLM 應用環境的定義例子,例子中應用環境所對應的啟動作業為 DB11WLM1。

清單 2. 主機 WLM 應用環境定義界面

Appl Environment Name . . DB11WLM1

Description . . . . . . . DB2 DB11WLM1

Subsystem type . . . . . DB2

Procedure name . . . . . DB11WLM1

Start parameters . . . . DB2SSN=&IWMSSNM,NUMTCB=1,APPLENV=DB11WLM1

創建 DB2 存儲過程

DB2 產品提供的存儲過程是通過客戶化 DSNTIJSG 作業來定義的。在提交作業完成創建存儲過程之前,需要對存儲過程進行必要的規劃。根據存儲過程的功能不同,建議分為以下 4 類:

表 1. 存儲過程的分類

另外,需要注意以下幾點:

1.存儲過程的分類可能會依據 DB2 的 PTF 版本不同而有改變;

2.存儲過程的 NUMTCB 的設置除了根據存儲過程的功能要求外,還依賴于系統資源情況;

3.建議 WLM 應用環境和啟動過程名稱一致,便于管理;

4.存儲過程分類的粒度根據實際情況可能會有不同,基本原則為在滿足功能需求的情況下,盡可能的簡化配置,便于管理。

以下我們重點介紹為四個不同的 WLM 應用環境準備的啟動作業過程,通過啟動作業可以為 WLM 環境準備不同的存儲過程執行環境。

為在線 Utility 執行而準備的存儲過程

此類存儲過程功能是需要調用數據庫的在線 UTILITY,例如數據庫所提供的 DSNUTILS 和 DSNUTILU,在配置此類存儲過程的時候,NUMTCB 要求定義為 1,也就是不容許并發調用。主要是由于在調用時,會生成一些中間文件,如果容許同時調用存儲過程的話,這些文件會被互相覆蓋,導致不可預料的錯誤發生。

以下為此類存儲過程所調用的啟動作業。在作業中的 SYSIN 是分配一些臨時空間存儲 Utility 的輸入語句。SYSPRINT 是分配臨時空間來存儲 utility 的輸出信息。RNPRIN01 是為 DFSORT 信息所分配的空間,UTPRINT 也是為 DFSORT 信息所分配的空間,DSSPRINT 是當執行 concurrent copies 時,為輸出信息分配空間。

清單 3. 在線 Utility 存儲過程對應的 STC 作業

//DB11WLM1 PROC APPLENV=DB11WLM1,DB2SSN=DSN,RGN=0K,NUMTCB=1

//IEFPROC EXEC PGM=DSNX9WLM,REGION=&RGN,TIME=NOLIMIT,

// PARM='&DB2SSN,&NUMTCB,&APPLENV'

//STEPLIB DD DISP=SHR,DSN=prefix.SCEERUN

// DD DISP=SHR,DSN=prefix.SDSNEXIT

// DD DISP=SHR,DSN=prefix.SDSNLOAD

//UTPRINT DD SYSOUT=*

//RNPRIN01 DD SYSOUT=*

//DSSPRINT DD SYSOUT=*

//SYSIN DD UNIT=SYSDA,SPACE=(4000,(20,20),,,ROUND)

//SYSPRINT DD UNIT=SYSDA,SPACE=(4000,(20,20),,,ROUND)

為通用情況準備的存儲過程

另外,我們為大多數的存儲過程準備了一套運行環境,所準備的啟動作業如下所示,其中 NUMTCB 可以根據系統資源情況來定,一般推薦可以設置為 40 或 60。

清單 4. 通用情況下存儲過程對應的 STC 作業

//DB11WLM2 PROC APPLENV=DB11WLM2,DB2SSN=DSN,RGN=0K,NUMTCB=40

//IEFPROC EXEC PGM=DSNX9WLM,REGION=&RGN,TIME=NOLIMIT,

// PARM='&DB2SSN,&NUMTCB,&APPLENV'

//STEPLIB DD DISP=SHR,DSN=prefix.SCEERUN

//* DD DISP=SHR,DSN=prefix.SDFHEXCI For CICS

// DD DISP=SHR,DSN=prefix.SDSNEXIT

// DD DISP=SHR,DSN=prefix.SDSNLOAD

//* DD DISP=SHR,DSN=prefix.SCSQLOAD For MQ

//* DD DISP=SHR,DSN=prefix.SCSQAUTH For MQ

//* DD DISP=SHR,DSN=prefix.SCSQANLE For MQ

//*SYSIN DD SYSOUT=* For Debugger and XML

//*SYSPRINT DD SYSOUT=*

//*WSERROR DD PATH='/tmp/wsc.err', For WEB_SERVICES

//* PATHOPTS=(ORDWR,OCREAT,OAPPEND),

//* PATHMODE=(SIRUSR,SIWUSR,SIRGRP,SIWGRP,SIROTH,SIWOTH)

REXX 語言編寫的存儲過程

對于由 REXX 語言寫的存儲過程來說,啟動作業同其他類型的存儲過程是不同的。見下面的例子。需要特別提出的是,REXX 類型的存儲過程的 NUMTCB 應該設為 1。

清單5. REXX 存儲過程對應的STC作業

//DB11WLMR PROC APPLENV=DB11WLM_REXX,DB2SSN=DSN,RGN=0K,NUMTCB=1

//IEFPROC EXEC PGM=DSNX9WLM,REGION=&RGN,TIME=NOLIMIT,

// DYNAMNBR=5, <== Allow for Dyn Allocs

// PARM='&DB2SSN,1,&APPLENV' <== Use 1, not NUMTCB

//*

//NUMTCB@1 SET NUMTCB= <== Null NUMTCB symbol

//*

//* Include SDSNEXIT to use Secondary Authids (DSN3@ATH DSN3@SGN exits)

//STEPLIB DD DISP=SHR,DSN=prefix.RUNLIB.LOAD

// DD DISP=SHR,DSN=CBC!!.SCCNCMP <== C Compiler

// DD DISP=SHR,DSN=prefix.SCEERUN <== LE runtime

// DD DISP=SHR,DSN=prefix.SDSNEXIT

// DD DISP=SHR,DSN=prefix.SDSNLOAD

//SYSEXEC DD DISP=SHR,DSN=DSN!!0.SDSNCLST <== Location of DSNTPSMP

//SYSTSPRT DD SYSOUT=*

//CEEDUMP DD SYSOUT=*

//SYSPRINT DD SYSOUT=*

//SYSABEND DD DUMMY

//DSNTRACE DD SYSOUT=*

//*

//**** Data sets required by the SQL Procedures Processor

//SQLDBRM DD DISP=SHR, <== DBRM Library

// DSN=DSN!!0.DBRMLIB.DATA

//SQLCSRC DD DISP=SHR, <== Generated C Source

// DSN=DSN!!0.SRCLIB.DATA

//SQLLMOD DD DISP=SHR, <== Application Loadlib

// DSN=DSN!!0.RUNLIB.LOAD

//SQLLIBC DD DISP=SHR, <== C header files

// DSN=CEE!!.SCEEH.H

// DD DISP=SHR,

// DSN=CEE!!.SCEEH.SYS.H

// DD DISP=SHR, <== Debug header file

// DSN=DSN!!0.SDSNC.H

//SQLLIBL DD DISP=SHR, <== Linkedit includes

// DSN=CEE!!.SCEELKED

// DD DISP=SHR,

// DSN=DSN!!0.SDSNLOAD

//SYSMSGS DD DISP=SHR, <== Prelinker msg file

// DSN=CEE!!.SCEEMSGP(EDCPMSGE)

//*

//**** DSNTPSMP Configuration File - CFGTPSMP (optional)

//* A site provided sequential dataset or member, used to

//* define customized operation of DSNTPSMP in this APPLENV.

//*CFGTPSMP DD DISP=SHR,DSN=

//*

//**** Workfiles required by the SQL Procedures Processor

//SQLSRC DD UNIT=SYSALLDA,SPACE=(23440,(20,20)),

// DCB=(RECFM=FB,LRECL=80,BLKSIZE=23440)

//SQLPRINT DD UNIT=SYSALLDA,SPACE=(23476,(20,20)),

// DCB=(RECFM=VB,LRECL=137,BLKSIZE=23476)

//SQLTERM DD UNIT=SYSALLDA,SPACE=(23476,(20,20)),

// DCB=(RECFM=VB,LRECL=137,BLKSIZE=23476)

//SQLOUT DD UNIT=SYSALLDA,SPACE=(23476,(20,20)),

// DCB=(RECFM=VB,LRECL=137,BLKSIZE=23476)

//SQLCPRT DD UNIT=SYSALLDA,SPACE=(23476,(20,20)),

// DCB=(RECFM=VB,LRECL=137,BLKSIZE=23476)

//SQLUT1 DD UNIT=SYSALLDA,SPACE=(23440,(20,20)),

// DCB=(RECFM=FB,LRECL=80,BLKSIZE=23440)

//SQLUT2 DD UNIT=SYSALLDA,SPACE=(23440,(20,20)),

// DCB=(RECFM=FB,LRECL=80,BLKSIZE=23440)

//SQLCIN DD UNIT=SYSALLDA,SPACE=(32000,(20,20))

//SQLLIN DD UNIT=SYSALLDA,SPACE=(3200,(30,30)),

// DCB=(RECFM=FB,LRECL=80,BLKSIZE=3200)

//SQLDUMMY DD DUMMY

//SYSMOD DD UNIT=SYSALLDA,SPACE=(23440,(20,20)),

// DCB=(RECFM=FB,LRECL=80,BLKSIZE=23440)

JAVA 語言應用準備的存儲過程

對與 JAVA 語言編寫的存儲過程,由于主機上的 JAVA 是運行在 USS 下,所以需要指定指定 JAVA 運行環境,見啟動過程中的 JAVAENV 所指定的數據集。

清單6. JAVA 存儲過程對應的STC作業

//DB11WLMJ PROC APPLENV=DB11WLM_JAVA,DB2SSN=DSN,RGN=0K,NUMTCB=5

//IEFPROC EXEC PGM=DSNX9WLM,REGION=&RGN,TIME=NOLIMIT,

// PARM='&DB2SSN,&NUMTCB,&APPLENV'

//STEPLIB DD DISP=SHR,DSN=prefix.SCEERUN

// DD DISP=SHR,DSN=prefix.SDSNEXIT

// DD DISP=SHR,DSN=prefix.SDSNLOAD

//JAVAENV DD DISP=SHR,DSN=prefix.DB11WLMJ.JAVAENV

//JSPDEBUG DD SYSOUT=*

//JAVAOUT DD PATH='/V1R7/USR/db2a10/JAVAOUT.TXT',

// PATHOPTS=(ORDWR,OCREAT,OAPPEND),

// PATHMODE=(SIRUSR,SIWUSR,SIRGRP,SIWGRP,SIROTH,SIWOTH)

//JAVAERR DD PATH='/V1R7/USR/db2a10/JAVAERR.TXT',

// PATHOPTS=(ORDWR,OCREAT,OAPPEND),

// PATHMODE=(SIRUSR,SIWUSR,SIRGRP,SIWGRP,SIROTH,SIWOTH)

其中 JAVAENV 指定 JAVA 運行環境定義,JAVAENV 文件的內容,舉一例子做參考:

清單7. JAVAENV 配置文件信息

ENVAR('_CEE_ENVFILE=/u/db2tdbg/nolimit.txt',

'JAVA_HOME=/u/java/J1.4'),

MSGFILE(JSPDEBUG,,,,ENQ),

XPLINK(ON)

其中 nolimit.txt 的配置信息如下:

清單8. JAVAENV 配置文件中 nolimit.內容信息

LIBPATH=/griv2r2/lib:/usr/lpp/db2810/lib

CLASSPATH=/egfv1r1/egfsproc.jar:/usr/lpp/db2810/classes/db2j2classes.zip

:/u/java/J1.4/lib/charsets.jar

DB2_HOME=/usr/lpp/db2810/

WORK_DIR=/u/db2tdbg

TMSUFFIX=/griv2r2/griserver.jar:/griv2r2/griobjects.jar

:/griv2r2/xercesImpl.jar:/griv2r2/xmlapis.jar

:/griv2r2/grinls.jar:/griv2r2/griuf.jar:/griv2r2/bicompare.jar

PATH=/u/java/J1.4/bin

DB2SQLJPROPERTIES=/u/db2tdbg/db2sqljjdbc.properties

STEPLIB=SYS1.DSN810.PE01.SDSNEXIT:DSN810.SDSNLOAD:DSN810.SDSNLOD2

JAVA_HOME=/u/java/J1.4

其中 /u/db2tdbg/db2sqljjdbc.properties 的配置信息為:

清單9.JAVAENV 配置文件 db2sqljjdbc.properties 配置信息

DB2SQLJSSID=PE11

DB2SQLJPLANNAME=DSNJDBC

DB2SQLJ_TRACE_FILENAME=/tmp/javatrc.db2tdbg

DB2CURSORHOLD=YES

DB2SQLJMULTICONTEXT=YES

DB2SQLJATTACHTYPE=RRSAF

DB2SQLJDBRMLIB=DSNPE01.V8.DBRMLIB.DATA

DB2CURSORHOLD=YES

db2.connpool.max.size=100

db2.jdbc.profile.pathname=/usr/lpp/db2810/classes/DSNJDBC_JDBCProfile.ser

最后,用戶可以通過配置客戶端來連接 DB2 子系統使用存儲過程提供的功能,在連接前,需要保證在服務器端 DDF(Distributed Data Facility)已經配置并正常啟動。

在DB2命令窗口里輸入以下命令:

清單10. DB2 分布式連接配置命令

db2 catalog tcpip node remote server

db2 catalog dcs database as

db2 catalog database as

at node authentication DCS

以上信息可以通過在 MVS console 輸入以下命令–DISPLAY DDF 命令來確定 DB2 子系統的 DB2 location,IP 地址和 TCP 端口號等連接信息。在正確配置好客戶端后,我們可以通過以下命令來連接 DB2 子系統:

清單11. DB2分布式連接命令

db2 connect to user using

標簽: DB2 數據庫
主站蜘蛛池模板: 97久久久国产精品 | 人人射av| 色伊人 | 久久综合一区二区三区 | 无码日韩精品一区二区免费 | 久久免费在线观看 | 国产区福利 | 国产精品国产三级国产aⅴ中文 | 久久成人免费观看 | 2012中文版免费观看 | 日韩成人小视频 | 蜜臀av在线播放一区二区三区 | 国产午夜精品一区二区 | 国产成人精品久久 | 香蕉av777xxx色综合一区 | 日韩乱码中文字幕 | 精品一区二区三区蜜桃 | 亚洲男人的天堂在线播放 | 亚洲一区二区三区在线 | 日韩亚洲欧美综合 | 国产福利在线播放 | 亚洲一区二区在线视频 | 九色91视频 | 91夜夜| 国产综合精品 | 国产欧美综合一区二区三区 | 成人欧美一区二区三区白人 | 国产视频一区二区在线 | 午夜视频91 | 成人久久久 | 中国妞xxxhd露脸偷拍视频 | 亚洲自啪| 色综合天天综合网国产成人网 | 九九热在线视频免费观看 | 一区影院| 欧美精品久久一区 | 在线观看第一页 | 青青久久 | 特级淫片日本高清视频免费 | 日韩 国产 在线 | 视频在线一区二区三区 | 日韩超级大片免费看国产国产播放器 | 成人精品| 欧美一级网站 | 91av在| 亚洲另类小视频 | 做a视频在线观看 | 成人三级av | 国产一二在线 | 色无欲天天天影视综合网 | 国产精品69久久久久水密桃 | 欧美一区二区在线观看 | 青青草网 | 中文字幕高清一区 | 欧美一区二区三区 | 日韩av一区二区在线观看 | 精品久久久久久久久久久久久久 | 日本久久视频 | 国产成人在线视频 | 久久综合狠狠综合久久综合88 | 在线观看国产视频 | 91久久精品一区二区别 | 老司机深夜福利视频 | 欧美日韩一区二区三区免费视频 | 黄视频网站免费观看 | 国产精品视频一二三区 | 国产视频亚洲精品 | 日韩在线 | 91九色porny首页最多播放 | 国产在线一区二区三区 | 久久草在线视频 | 国产精品久久视频 | 91精品国产综合久久久久久 | 杨门女将寡妇一级裸片看 | 亚洲一区中文字幕在线 | 亚洲综合大片69999 | 国产成人福利视频 | 七七婷婷婷婷精品国产 | 91成人区 | 不卡视频一区二区三区 | 激情毛片 | 日韩a在线 | 国产成人精品一区二 | 国产一区二区视频在线观看 | 日韩一区二区三区av | jizzjizzjizz亚洲女| 国产激情性色视频在线观看 | 国产美女久久久 | 午夜视频免费 | 欧美一区二区在线视频 | 国产一区二区三区色淫影院 | 天天干国产| 欧美日韩二区三区 | 另类a v| 国产免费一区二区三区四区五区 | 成人av在线网 | 国产精品1区2区3区 中文字幕一区二区三区四区 | 狠狠干天天干 | 午夜电影合集 | 自拍偷拍欧美 | 天天看天天爽 | 精品在线一区二区 | 日韩一区二区在线免费 | 91精品国产91久久综合桃花 | 国产精品夜夜 | 男女视频免费在线观看 | 久久国产精品免费一区二区三区 | 成人午夜在线 | 久久国产精品免费一区二区三区 | 日本一区二区三区四区不卡视频 | 国产免费视频在线 | 欧美国产精品一区 | 欧美在线视频不卡 | 国产精品视频播放 | 日韩中文字幕在线视频 | 亚洲人成人一区二区在线观看 | 中文字幕第十二页 | 中文字幕成人网 | 中文字幕亚洲在线观看 | 国产视频9999 | 韩日一区| 日韩欧美中文 | av在线一区二区三区 | 国产精品成av人在线视午夜片 | 自拍偷拍专区 | 91精品一区二区三区久久久久久 | 亚洲高清在线观看 | 91在线视频观看 | 精品国产乱码一区二区三区 | 99re免费视频精品全部 | 一级片免费在线 | 欧美三及片 | 亚洲精品中文字幕乱码无线 | 国产在线小视频 | 国产精品二区三区 | 日韩中文视频 | 午夜欧美一区二区三区在线播放 | 国产乱码精品一区二区三区忘忧草 | 成人精品一区二区三区中文字幕 | 色综合一区 | 国产一区 | 成人午夜精品一区二区三区 | 日韩欧美一区二区三区免费观看 | 97色在线视频 | 欧美日韩在线成人 | 一级一级一级毛片 | 日韩精品一区二区三区在线 | 国产在线中文字幕 | 日韩三级电影在线免费观看 | 亚洲第一免费视频网站 | 国产日韩免费 | 国产精品成人一区二区三区夜夜夜 | 亚洲精选国产 | 日韩视频在线免费观看 | 精品久久99 | 欧美国产一区二区三区 | 国产精品久久久久久久毛片 | 亚洲视频 欧美视频 | 91精品久久久久久久久久入口 | 国产日韩欧美精品一区二区 | 久久精品一区二区三区四区毛片 | 成人欧美在线视频 | 久色视频在线 | 成人久久久久久久 | 精品国产不卡一区二区三区 | 精品视频在线免费观看 | 黄色二区 | 日韩视频―中文字幕 | 亚洲精品一区二区三区蜜桃久 | 噜噜噜在线观看免费视频日本 | 欧美福利一区二区三区 | 国产超碰人人模人人爽人人添 | 久久爱综合网 | 一级毛片免费观看 | 欧美午夜一区 | 91精品国产日韩91久久久久久 | 精品国产精品三级精品av网址 | 国产亚洲综合一区二区 | 欧美久久精品 | 爱爱网av| www.男人天堂| 一区在线免费 | 亚洲日本韩国在线观看 | 亚洲高清免费 | 久久精品黄 | 久久精品一区二区三区四区 | 第一色站| 国偷自产一区二区免费视频 | 成人免费一区二区三区视频软件 | 国产电影一区二区 | 亚洲综合中文 | 中文无码久久精品 | 青青草99| 日本亚洲精品成人欧美一区 | 一级大片av | 亚洲成a人v欧美综合天堂麻豆 | 91一区二区在线观看 | 黄色毛片免费看 | 成人午夜精品久久久久久久3d | 欧美日韩一区二区三区在线观看 | 成人深夜免费视频 | 99色综合 | 日韩av免费 | 一级a性色生活片久久毛片明星 | 成人无遮挡毛片免费看 | 亚洲性人人天天夜夜摸 | 国产精品三级久久久久久电影 | 国产日韩精品入口 | 人人草天天草 | 看免费av| 久久性色 | 国产成人精品一区二区三区四区 | 精品久久电影 | 欧美一级三级 | 国产精品美女久久久久久久网站 | 亚洲精品久久久久久下一站 | 国产一区二区三区在线免费观看 | 欧美一区免费 | 午夜在线视频免费观看 | 国产精品一区二区不卡 | 欧美啊v| 一区二区三区四区精品 | 91麻豆产精品久久久 | 国产精品国产精品 | 久草成人 | 日本a视频 | 精品久久久中文字幕 | 欧美日韩专区 | 欧美天天 | 久久亚洲高清 | 精品国产一区二区三区久久久 | 91在线免费看 | 成人免费视频播放 | 欧美一区成人 | 精品毛片 | 精品国产一区二区三区日日嗨 | 国产精品久久久久久久久久 | 91免费在线播放 | av男人电影天堂 | 欧美国产日韩一区二区 | 在线一级视频 | 极品白嫩少妇无套内谢 | 久久久久亚洲精品 | 久久女同互慰一区二区三区 | www,四虎| 中文无码久久精品 | 在线看av网址 | 久久99国产精品久久99果冻传媒 | 日韩三级电影免费观看 | 亚洲一区二区三区国产 | 欧美日韩国产综合视频 | 国产激情精品 | 亚洲综合二区 | 国产一区二区三区四区在线观看 | 欧美日韩国产综合视频 | 欧洲毛片 | 国产精品国色综合久久 | 亚洲一区免费视频 | 成人看片在线 | 国产精品九九九 | 亚洲精品国产电影 | 精品欧美| 久久99精品久久久久久久青青日本 | vagaa欧洲色爽免影院 | 国产视频一区二区 | 91精品久久久久 | 中文一区 | 伊人精品视频 | 免看一级一片 | 狠狠影院 | 一级片黄片毛片 | 成人免费视频网站在线看 | 在线视频亚洲 | 欧美日韩专区 | 日韩美一级 | 日韩国产 | 一级一片免费看 | 在线一级视频 | 国产成人精品一区二 | 日本不卡在线 | 日韩视频在线一区二区 | 欧美成人一区二区三区片免费 | 日韩毛片免费在线观看 | 久久男人 | 天天综合网久久综合网 | 国产一区久久 | 日韩一区二区三区在线视频 | 岛国a视频 | 国产成人自拍一区 | 日韩高清国产一区在线 | 亚洲成人av片 | 超碰在线天天 | 久久无码精品一区二区三区 | a视频在线观看 | 免费观看特级毛片 | 午夜精品久久久久久久星辰影院 | 国产精品亚洲一区二区三区 | 国产乱码精品1区2区3区 | 国产婷婷| 成人夜晚看av | 欧美精品国产精品 | 华人黄网站大全 | 黄色片网站 | 国产精品久久久久久吹潮 | 国产在线一区不卡 | 久久久久久久影院 | 久久精品视 | 麻豆精品久久久 | 国产精久 | 国产成人免费视频 | 精品一区二区三区久久久 | 欧美精品在线一区二区三区 | 欧美1区2区3区 | 天天看天天爽 | 色精品| www.日韩av.com | 午夜影院在线观看视频 | 99riav在线| 国产高清视频在线 | 精品一区二区三区免费看 | 久久伊人国产 | 久久精品综合 | 免费观看毛片 | 狠狠色狠狠色合久久伊人 | 日本久久久影视 | 九色视频在线播放 | 中文字幕一区二区三区乱码图片 | 日本黄色大片免费观看 | 国产毛片精品 | 欧美精品成人一区二区三区四区 | 在线成人国产 | av网站在线免费看 | 精品久 | 成人久久久久 | 亚洲免费观看 | 中文字幕一区二区三 | 黄色小视频在线免费观看 | 综合网在线 | 在线观看亚洲大片短视频 | 色中色综合 | 欧洲成人午夜免费大片 | 91亚洲国产成人久久精品网站 | 中文字幕乱码亚洲精品一区 | 国产日韩精品一区二区 | 精品国产91亚洲一区二区三区www | 色偷偷噜噜噜亚洲男人 | 奇米av| 亚洲一区中文 | 青草青草久热精品视频在线观看 | 日韩在线1| 51国产午夜精品免费视频 | 日韩一区欧美一区 | 精品美女在线 | 欧美不卡 | 欧美一区二区三区视频 | 国产精品毛片无码 | 欧美福利在线观看 | 在线99热| 日韩av免费在线观看 | 中文字幕成人网 | 91丨九色丨国产 | 日韩免费视频 | 波多野吉衣网站 | 国产欧美久久久久久 | 婷婷av在线 | 欧美视频网站 | 中文字幕一区在线观看视频 | 动漫泳衣美女 | 午夜国产精品成人 | 91午夜在线| 久久99国产精品久久99大师 | 欧美啪 | av一道本 | 秋霞在线一区 | 337p日本粉嫩噜噜噜 | 青青草久久网 | 亚洲欧美在线观看 | 一区二区三区在线免费播放 | 日本三级在线视频 | 一区二区三区欧美 | 国产美女一区二区 | 亚洲一区二区在线播放 | 国产精品乱码人人做人人爱 | 中文字幕在线免费视频 | 亚洲午夜精品一区二区三区 | 亚洲视频在线观看一区二区三区 | 欧美日韩一区二区视频在线观看 | 成人久久久精品乱码一区二区三区 | av先锋资源| 日韩国产在线播放 | 国产女人和拘做受视频 | 午夜免费电影 | 成人精品在线视频 | 欧美黑人狂躁日本寡妇 | 成人av网页 | 免费成人高清在线视频 | 91偷拍精品一区二区三区 | 欧美日韩视频在线观看免费 | 精品视频在线观看一区二区 | 欧美日韩中文 | 成人福利av| 亚洲日韩中文字幕一区 | 狠狠干狠狠干 | 亚洲国产精品网站 | 日韩中文在线视频 | 国产精品久久久久久一级毛片 | 亚洲人成网亚洲欧洲无码 | 成人九色| 超碰日韩在线 | 91免费在线视频 | 伊人欧美在线 | 91亚洲国产成人久久精品网站 | 久久伊人精品视频 | 北条麻妃一区二区三区在线 | 伊人网站 | 国产三区精品 | 国产美女www爽爽爽免费视频 | 天堂一区二区三区 | 91亚洲精品在线观看 | 国产成人精品午夜视频' | 国产99久久久精品视频 | 三级视频在线 | 国产日产精品一区二区三区四区 | 亚洲福利片 | 91视频网| 午夜免费福利视频 | 黄色免费网站在线看 | 成人a视频 | 婷婷亚洲综合 | 国产精品福利在线观看 | 久久精品a一级国产免视看成人 | 国产在线中文字幕 | 色欧美片视频在线观看 | 九九热精品视频在线观看 | 亚洲一区二区三区久久久 | 国产一二区在线 | 精品久久久久久久久福利 | 日韩在线 | 一a级毛片| 999精品网 | 免费看爱爱视频 | 成人黄色免费 | a级片视频在线观看 | 欧洲尺码日本国产精品 | 亚洲社区在线 | 欧美久久久久久久久久 | 97视频精品 | 久久精品这里只有精品 | 亚洲视频一区二区 | 久久国产精品视频 | 福利视频网 | 日韩在线观看一区 | a级片视频在线观看 | 九一亚洲精品 | 精品一区二区久久久久久久网站 | 欧美一级做性受免费大片免费 | 涩久久| 国产99久久精品 | 在线成人国产 | 国产欧美一区二区精品忘忧草 | 精品国精品国产自在久不卡 | 在线看国产 | 欧美视频一区二区三区在线观看 | 免费国产一区 | 国产精品美女久久久久久久久久久 | 亚洲av毛片一级二级在线 | 欧美日韩国产一区二区三区在线观看 | 国产精品2区 | 日韩视频一区二区 | 五月激情综合网 | 91精品国产综合久久久久久漫画 | 亚洲成人在线观看视频 | 国产亚洲一区二区精品 | 999精品视频 | 91一区二区在线 | 一级视频黄色 | 午夜精品一区 | www.福利视频 | 亚洲成人免费在线 | a毛片在线免费观看 | 欧美日韩国产精品一区二区 | 久久国产精品99久久久久久牛牛 | 久久久国色 | www.久久精品 | 亚洲国产精品一区 | 欧美一级片在线观看 | 亚洲成人免费在线 | 国产精品久久久久久久一区探花 | 国产成人激情 | 国产91综合一区在线观看 | 日日操天天操 | 国产在线一区二区 | 中文字幕成人 | 亚洲理论电影在线观看 | 日韩视频三区 | 亚洲欧美日韩在线 | 国产成人在线一区二区 | 欧美精品1区2区3区 欧美视频在线一区 | 国产精品黄视频 | 久久亚洲精品裙底抄底 | 狠狠操综合网 | 午夜视频网 | 国产精品亚洲a | 久久五月视频 | 激情自拍偷拍 | 欧美日一区| 午夜四虎| 国产福利91精品一区二区三区 | 亚洲国产天堂久久综合 | 日韩中文字幕在线 | 成人免费视频网站 | 日韩视频二区 | 欧美视频二区 | 国产在线中文字幕 | 91短视频版在线观看www免费 | 欧美亚洲一区二区三区 | 久久精品六 | 久久精品一区二区三区四区毛片 | 黄色大片免费网站 | 嫩草研究院在线观看入口 | 国产精品视频一区二区三区不卡 | 成人欧美一区二区三区黑人孕妇 | 亚洲成人自拍 | 久久久久亚洲一区二区三区 | 亚洲国产高清高潮精品美女 | 日韩在线观看成人 | 亚洲第1页 | av福利网站| 色在线看 | 超碰在线99 | 日韩欧美在线视频 | 国产精品久久影院 | 99国产精品99久久久久久 | 操人网 | 日本中文字幕在线视频 | 美女二区 | 欧美精品一区二区在线观看 | 伊人网av| 伊人精品视频在线观看 | 久久九 | 日韩av高清在线 | 国产成人午夜精品影院游乐网 | 国产激情网站 | 欧美在线观看一区 | 国产免费自拍av | 日韩欧美中字 | 欧美天天 | 久久精品毛片 | 青青草视频网站 | 无码一区二区三区视频 | 天天操综合网 | 九九精品视频在线观看 | 精品国产成人 | 亚洲黄色免费观看 | 天天影视网色香欲综合网无拦截 | 国产精品毛片一区二区在线看 | 91视频在线免费观看 | www.av在线| 欧美电影一区 | 精品一区二区久久久久久久网站 | 国产亚洲精品久久久456 | 91视频国产一区 | 一级片黄色免费 | 国产精品中文字幕在线 | 成人精品久久久 | 中文字幕av黄色 | 久久国内精品 | 久久精品色欧美aⅴ一区二区 | 中文字幕一二三区 | 亚洲精品久久久久久动漫 | 日韩亚洲欧美综合 | 国产在线h| 亚洲成人一二区 | 成人午夜精品久久久久久久3d | 日日鲁鲁 | 欧美一区免费 | 色一情一乱一伦一区二区三区 | 欧美三级在线 | 亚洲天堂久久 | 精品欧美一区二区在线观看视频 | 精品国产一区二区三区性色av | 毛片a级片| 嫩草视频在线观看免费 | 黄色一级免费大片 | 国产精品香蕉在线观看 | 中文字幕在线视频第一页 | 成人羞羞网站 | 国产在线精品一区 | 在线色网 | 久久久久久久久一区 | 亚洲第一黄 | 国产亚洲精品久久久久久久久 | 碰碰视频| 久久成人精品一区二区三区 | 夜夜爽99久久国产综合精品女不卡 | 奇米成人影视 | 日本一区二区三区四区视频 | 毛片入口| 国产精品久久久久久久午夜 | 亚洲一区二区视频在线播放 | 欧美日韩久久精品 | 国产精品久久久久久久久久久新郎 | 2020天天操 | www色婷婷 | 国产v片| 91欧美在线 | 日本理伦片午夜理伦片 | 亚洲一区二区三区中文字幕 | 一区二区三区四区日韩 | 国产精品久久天天躁 | 一级欧美在线 | 亚州中文字幕蜜桃视频 | 国产一区二区免费电影 | 一区二区在线视频 | 日本成人一二三区 |