亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

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

講解DB2 V9.5工作負載管理之定義服務類

瀏覽:8日期:2023-11-09 12:16:07
IBM 的 DB2 V9.5 引入并完善了工作負載管理(WORKLOAD MANAGEMENT)功能,使得我們可以更深入地洞察系統的運行情況并更好地控制資源和性能。在 DB2 V9.5 中,新引入的工作負載管理功能(WLM)可以幫助您標識、管理和監視數據服務器的工作負載。本文將重點介紹 DB2 V9.5 關于工作負載管理(WLM)的新特性以及相關的概念,并結合實際的例子幫助大家理解和提高。

構建數據庫環境

首先我們在 WINDOWS XP 環境下安裝 DB2 ESE V9.5,安裝完成后,打開一個 DB2CLP 窗口,發出CREATE DB 命令,創建示例數據庫 DB2TEST1,命令中需要指定數據庫代碼頁或數據庫代碼集,因為在 DB2 V9.5 中所有創建的數據庫默認情況下數據庫代碼頁都是 1208,數據庫代碼集都是 UTF-8,這點和之前的版本不一樣。如果想把數據庫代碼頁設置成 1386,數據庫代碼集設置成 GBK,就需要在 CREATE DB 命令中把數據庫代碼頁設置成 1386 或者把數據庫代碼集設置成 GBK。具體如清單 1 所示:

清單1. 創建示例數據庫 DB2TEST1

C:> DB2 CREATE DATABASE DB2TEST1 USING CODESET GBK TERRITORY CN COLLATE

USING SYSTEM PAGESIZE 4096

DB20000I CREATE DATABASE 命令成功完成。

命令執行成功,這樣我們創建了一個示例數據庫 DB2TEST1。繼續在這個 DB2CLP 窗口中發出 GET DB CFG 命令,查看示例數據庫 DB2TEST1 的配置參數,我們可以看到數據庫地域是 CN,數據庫代碼頁被設置成了 1386,數據庫代碼集被設置成了 GBK。另外,在 DB2 V9.5 新增了幾個參數,分別是數字兼容性、Varchar2 兼容性、十進制浮點舍入方式、啟用 XML 字符操作和 WLM 收集時間間隔(分鐘),這些參數的具體信息可以查看 DB2 信息中心。查看示例數據庫 DB2TEST1 配置參數的詳細情況請參見清單 2 所示:

清單 2. 查看示例數據庫 DB2TEST1 配置參數

C:> db2 get db cfg for db2test1

數據庫 db2test1 的數據庫配置

數據庫配置發行版級別 = 0x0c00

數據庫發行版級別 = 0x0c00

數據庫地域 = CN

數據庫代碼頁 = 1386

數據庫代碼集 = GBK

數據庫國家/地區代碼 = 86

數據庫整理順序 = UNIQUE

備用整理順序 ( ALT_COLLATE ) =

數字兼容性 = OFF

Varchar2 兼容性 = OFF

數據庫頁大小 = 4096

動態 SQL 查詢管理 ( DYN_QUERY_MGMT ) = DISABLE

對此數據庫的發現支持 ( DISCOVER_DB ) = ENABLE

限制訪問 = NO

缺省查詢優化類 ( DFT_QUERYOPT ) = 5

并行度 ( DFT_DEGREE ) = 1

在算術異常時繼續 ( DFT_SQLMATHWARN ) = NO

缺省刷新有效期 ( DFT_REFRESH_AGE ) = 0

缺省維護的選項( DFT_MTTB_TYPES )的表類型 = SYSTEM

保留的高頻值的數目 ( NUM_FREQVALUES ) = 10

保留的分位點數目 ( NUM_QUANTILES ) = 20

十進制浮點舍入方式 ( DECFLT_ROUNDING ) = ROUND_HALF_EVEN

. . . . . . . . . .

自調整內存 ( SELF_TUNING_MEM ) = ON

數據庫共享內存大小(4 KB) ( DATABASE_MEMORY ) = AUTOMATIC

數據庫內存閾值 ( DB_MEM_THRESH ) = 10

鎖定列表的最大存儲量(4 KB) ( LOCKLIST ) = AUTOMATIC

每個應用程序的鎖定百分比列表 ( MAXLOCKS ) = AUTOMATIC

程序包高速緩存大小(4 KB) ( PCKCACHESZ ) = AUTOMATIC

共享排序的排序堆域值(4 KB) ( SHEAPTHRES_SHR ) = AUTOMATIC

排序列表堆(4 KB) ( SORTHEAP ) = AUTOMATIC

. . . . . . . . . .

自動維護 ( AUTO_MAINT ) = ON

自動數據庫備份 ( AUTO_DB_BACKUP ) = OFF

自動表維護 ( AUTO_TBL_MAINT ) = ON

自動 runstats ( AUTO_RUNSTATS ) = ON

自動語句統計信息 ( AUTO_STMT_STATS ) = OFF

自動統計信息概要分析 ( AUTO_STATS_PROF ) = OFF

自動概要文件更新 ( AUTO_PROF_UPD ) = OFF

自動重組 ( AUTO_REORG ) = OFF

啟用 XML 字符操作 ( ENABLE_XMLCHAR ) = YES

WLM 收集時間間隔(分鐘) ( WLM_COLLECT_INT ) = 0

繼續在這個 DB2CLP 窗口中,發出 DB2LEVEL 命令,查看 DB2 的版本信息,需要注意 DB2 代碼發行版是 ' SQL09050 ',工作負載管理(WLM)是從 DB2 V9.5 開始的,具體如清單 3 所示:

清單 3. 查看示例數據庫 DB2TEST1 的版本情況

C:> db2level

DB21085I 實例 ' DB2_01 ' 使用 ' 32 ' 位和 DB2 代碼發行版 ' SQL09050 ',級別標識為' 03010107 '。

參考標記為 ' DB2 v9.5.0.808 '、' s071001 ' 和 ' NT3295 ',修訂包為 ' 0 '。

產品使用 DB2 副本名 ' DB2COPY2 ' 安裝在 ' C:PROGRA~1IBMSQLLIB~1 ' 中。

我們在操作系統中存在兩個用戶,分別是 RHETTE,和 DB2ADMIN,密碼都是 passw0rd。我們使用RHETTE 用戶在 DB2CLP 窗口中連上示例數據庫 DB2TEST1,執行帶有 CREATE TABLE 語句的腳本 project.sql,創建示例表 PROJECT,具體如清單 4 所示:

清單4 . 創建示例表 PROJECT

C:> db2 connect to db2test1

數據庫連接信息

數據庫服務器 = DB2 / NT 9.5.0

SQL 授權標識 = RHETTE

本地數據庫別名 = DB2TEST1

C:>db2 -tvf project.sql

CREATE TABLE 'RHETTE'.'PROJECT' ( 'PROJNO' CHAR ( 6 ) NOT NULL ,

'PROJNAME' VARCHAR ( 24 ) NOT NULL WITH DEFAULT '' , 'DEPTNO' CHAR ( 3 ) NOT NULL ,

'RESPEMP' CHAR ( 6 ) NOT NULL , 'PRSTAFF' DECIMAL ( 5 , 2 ) , 'PRSTDATE' DATE ,

'PRENDATE' DATE , 'MAJPROJ' CHAR ( 6 ) ) IN 'USERSPACE1'

DB20000I SQL命令成功完成。

ALTER TABLE 'RHETTE'.'PROJECT' ADD CONSTRAINT 'PK_PROJECT' PRIMARY KEY ( 'PROJNO' )

DB20000I SQL命令成功完成。

CREATE INDEX 'RHETTE'.'XPROJ2' ON 'RHETTE'.'PROJECT' ( 'RESPEMP' ASC)

ALLOW REVERSE SCANS

DB20000I SQL命令成功完成。

繼續在 DB2CLP 窗口中插入測試數據,然后發出 SELECT 語句,我們可以看到這些數據,具體如清單 5 所示:

清單5 . 插入數據到示例表 PROJECT 中

C:> db2 select * from project

PROJNO PROJNAME DEPTNO RESPEMP PRSTAFF PRSTDATE PRENDATE MAJPROJ

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

AD3100 ADMIN SERVICES D01 000010 6.50 2002-01-01 2003-02-01 -

AD3110 GENERAL ADMIN SYSTEMS D21 000070 6.00 2002-01-01 2003-02-01

AD3100

AD3111 PAYROLL PROGRAMMING D21 000230 2.00 2002-01-01 2003-02-01

AD3110

AD3112 PERSONNEL PROGRAMMING D21 000250 1.00 2002-01-01 2003-02-01

AD3110

AD3113 ACCOUNT PROGRAMMING D21 000270 2.00 2002-01-01 2003-02-01

AD3110

IF1000 QUERY SERVICES C01 000030 2.00 2002-01-01 2003-02-01 -

IF2000 USER EDUCATION C01 000030 1.00 2002-01-01 2003-02-01 -

MA2100 WELD LINE AUTOMATION D01 000010 12.00 2002-01-01 2003-02-01 -

MA2110 W L PROGRAMMING D11 000060 9.00 2002-01-01 2003-02-01

MA2100

MA2111 W L PROGRAM DESIGN D11 000220 2.00 2002-01-01 1982-12-01

MA2110

MA2112 W L ROBOT DESIGN D11 000150 3.00 2002-01-01 1982-12-01

MA2110

MA2113 W L PROD CONT PROGS D11 000160 3.00 2002-02-15 1982-12-01

MA2110

OP1000 OPERATION SUPPORT E01 000050 6.00 2002-01-01 2003-02-01 -

OP1010 OPERATION E11 000090 5.00 2002-01-01 2003-02-01

OP1000

OP2000 GEN SYSTEMS SERVICES E01 000050 5.00 2002-01-01 2003-02-01 -

OP2010 SYSTEMS SUPPORT E21 000100 4.00 2002-01-01 2003-02-01

OP2000

OP2011 SCP SYSTEMS SUPPORT E21 000320 1.00 2002-01-01 2003-02-01

OP2010

OP2012 APPLICATIONS SUPPORT E21 000330 1.00 2002-01-01 2003-02-01

OP2010

OP2013 DB/DC SUPPORT E21 000340 1.00 2002-01-01 2003-02-01

OP2010

PL2100 WELD LINE PLANNING B01 000020 1.00 2002-01-01 2002-09-15

MA2100

20 條記錄已選擇。

定義服務類(SERVICE CLASS)

服務類的目的是為工作運行定義一個執行環境,這個環境包含可用的資源和不同的執行閾值,當你定義一個工作負載時,你必須為之指定對應的服務類。如果你沒有顯式的定義工作負載,用戶數據庫請求會被認為是系統默認的工作負載,其對應的服務類是系統默認的用戶服務類。所有的系統數據庫請求,對應的都是默認系統服務類。

所有的數據庫請求都是在服務類中執行的,并且在服務類中獲得相應的資源。所有的連接都是映射到工作負載上的,所有的工作負載都是映射到服務類上的。針對服務類中資源分配的情況,可以定義相應的閾值,來進行限定。DB2 的服務類擁有兩層結構:服務父類(Service Superclass)和服務子類(Service Subclass)。

當你使用服務類時,你可以通過控制這個服務類的一系列屬性,使不同的工作具有不同的優先級。比如,你可以設置服務類中工作的 I/O 頁預取優先級,設置服務類中所有代理的 CPU 優先級,你還可以通過不同類型的閾值控制服務類中工作所使用的資源。

下面我們打開一個 DB2CLP 窗口,發出 ALTER SERVICE CLASS 命令,使服務類 super_class、服務子類subclass_rhette、subclass_db2admin 失效,接著發出 DROP SERVICE CLASS 命令,刪除服務類和服務子類。需要注意的是,如果你想刪除一個服務父類(service superclass),需要保證所有相關的服務子類、工作負載、連接、動作、閾值等都無效。DROP SERVICE CLASS 命令成功完成后,發出 CREATE SERVICE CLASS 命令,創建我們需要的服務父類和服務子類,具體如清單 6 所示:

清單 6 . 創建服務類和服務子類

C:> db2 -tvf create_serviceclass.sql

alter service class subclass_rhette under super_class disable

DB21034E 該命令被當作 SQL 語句來處理,因為它是無效的“命令行處理器”命令。在

SQL 處理期間,它返回:

SQL0204N ' SUPER_CLASS ' 是一個未定義的名稱。 SQLSTATE = 42704

alter service class subclass_db2admin under super_class disable

DB21034E 該命令被當作 SQL 語句來處理,因為它是無效的“命令行處理器”命令。在

SQL 處理期間,它返回:

SQL0204N ' SUPER_CLASS ' 是一個未定義的名稱。 SQLSTATE = 42704

alter service class super_class disable

DB21034E 該命令被當作 SQL 語句來處理,因為它是無效的“命令行處理器”命令。在

SQL 處理期間,它返回:

SQL0204N ' SUPER_CLASS ' 是一個未定義的名稱。 SQLSTATE = 42704

drop service class subclass_rhette under super_class

DB21034E 該命令被當作 SQL 語句來處理,因為它是無效的“命令行處理器”命令。在

SQL 處理期間,它返回:

SQL0204N ' SUPER_CLASS ' 是一個未定義的名稱。 SQLSTATE = 42704

drop service class subclass_db2admin under super_class

DB21034E 該命令被當作 SQL 語句來處理,因為它是無效的“命令行處理器”命令。在

SQL 處理期間,它返回:

SQL0204N ' SUPER_CLASS ' 是一個未定義的名稱。 SQLSTATE = 42704

drop service class super_class

DB21034E 該命令被當作 SQL 語句來處理,因為它是無效的“命令行處理器”命令。在

SQL 處理期間,它返回:

SQL0204N ' SUPER_CLASS ' 是一個未定義的名稱。 SQLSTATE = 42704

create service class super_class

DB20000I SQL命令成功完成。

create service class subclass_rhette under super_class agent priority

default prefetch priority default collect activity data on all with details

and values collect aggregate activity data base collect aggregate request data base

DB20000I SQL命令成功完成。

create service class subclass_db2admin under super_class agent priority 6

prefetch priority high

DB20000I SQL命令成功完成。

名稱成功完成,需要注意的是我們在執行 CREATE SERVICE CLASS 命令時,指定了多個選項,下面來分別介紹一下:

AGENT PRIORITY DEFAULT or AGENT PRIORITY integer-constant

代理進程的優先級實際是 CPU 的優先級。

需要注意的是,使用這個屬性只適用于用戶請求對應的服務類,不適合系統數據庫請求對應的系統服務類。你可以使用這個屬性把當前服務類中代理的線程優先級和其他服務類區別開來。

AGENT PRIORITY integer-constant:指定運行在服務類中的代理相對于操作系統優先級的相對值。 AGENT PRIORITY DEFAULT:和運行在 DB2 中的線程一樣的正常優先級。默認值是 DEFAULT。當代理優先級設置為 DEFAULT 時,沒有特殊的操作發生,服務類中的代理將按照所有的 DB2 線程一樣的優先級進行調度。DEDAULT 對應的值是 -32768。

當這個參數設置成 DEFAULT 以外的值時,代理真正的優先級將是正常優先級加上 AGENT PRIORITY,并將在下次動作時生效。比如,如果正常的優先級是 20,并且我們把這個參數設置成 6,那么服務類中的代理的優先級是 20+6=26.

當服務父類的代理優先級設成 default 時,那么這個服務父類中的代理將按照和操作系統調度 DB2 線程一樣的優先級進行調度。當服務子類的代理優先級設成 default 時,服務子類繼承服務父類的進程優先級。默認的服務子類的代理優先級不能進行修改。

在 Linux 和 UNIX 平臺,integer-constant 的值可以是 -20 到 20(值越小代表的優先級越高),在windows 平臺,integer-constant 的值可以是 -6 到 6(值越小代表的優先級月低)。

PREFETCH PRIORITY

你可以使用這個參數來控制服務類中代理的預取優先級。可選的值有 high, medium, low. 當你設置了這個參數,服務類中的代理對應的預取順序在下次將按照你設置的值進行。如果你在一個預取請求提交后再修改這個參數的值,那么這個預取請求將不受新的設置參數值映像。

DEFAULT :對一個數據庫服務父類來說,默認的值是 medium 預取順序。當你對數據庫服務子類指定默認值時,服務子類將繼承相應的服務父類的預取優先級。

HIGH :把預取優先級設成高的。

MEDIUM :把預取優先級設成中的。

LOW :把預取優先級設成低的。

COLLECT ACTIVITY DATA

指定當動作完成后服務類中執行的每個動作信息都發送到相應的事件監控器中。默認值是 COLLECT ACTIVITY DATA NONE。COLLECT ACTIVITY DATA 子句只適用于服務子類。

NONE :指定將不收集這個服務類中執行每個動作信息。

ON COORDINATOR DATABASE PARTITION: 指定只收集動作所在數據庫分區上的動作數據。

ON ALL DATABASE PARTITIONS : 指定收集所有數據庫分區上的動作數據。但是,動作細節和值還是只在動作所在的數據庫分區上收集。

WITHOUT DETAILS : 指定語句和編譯環境不發送給事件監控器。

WITH DETAILS : 指定將語句和編譯環境發送給事件監控器。

AND VALUES : 指定把動作相關的輸入數據值發送給相應的事件監控器。

COLLECT AGGREGATE ACTIVITY DATA

指定捕獲這個服務類相關的 aggregate activity data 并發送給相應的事件監控器。這些信息將被定期收集,收集的頻率受工作負載管理收集時間間隔配置參數 (wlm_collect_int) 數據庫配置參數控制。默認值是 COLLECT AGGREGATE ACTIVITY DATA NONE. COLLECT AGGREGATE ACTIVITY DATA 子句只適用于服務子類。

BASE : 指定這個服務類的基本 aggregate activity data 將被捕獲并發送給相應的事件監控器。

EXTENDED : 指定這個服務類的所有 aggregate activity data 將被捕獲并發送給相應的事件監控器。

NONE : 指定將不捕獲這個服務類的 aggregate activity data 。

COLLECT AGGREGATE REQUEST DATA

指定捕獲這個服務類相關的 aggregate request data 并發送給相應的事件監控器。這些信息將被定期收集,收集的頻率受工作負載管理收集時間間隔配置參數 (wlm_collect_int) 數據庫配置參數控制。 默認值是COLLECT AGGREGATE ACTIVITY DATA NONE。 COLLECT AGGREGATE ACTIVITY DATA 子句只適用于服務子類。

BASE :指定這個服務類的基本 aggregate request data 將被捕獲并發送給相應的事件監控器。

NONE :指定將不捕獲這個服務類的 aggregate request data 。

工作負載管理收集時間間隔配置參數(wlm_collect_int)

此參數指定工作負載管理(WLM)統計信息的收集和復位時間間隔(以分鐘為單位)。

每隔 x wlm_collect_int 分鐘(其中 x 是 wlm_collect_int 參數的值),就會收集所有工作負載管理統計信息并將它們發送至任何活動統計信息事件監視器,然后復位統計信息。如果存在活動事件監視器,那么將根據該事件監視器的創建方式,將統計信息寫入文件或表。如果它不存在,那么將只復位統計信息,而不進行收集。

可以使用統計信息事件監視器收集的工作負載管理統計信息來監視短期和長期系統行為。由于可以將結果合并在一起來獲得長期行為,所以可以使用較小的時間間隔來同時獲得短期系統行為和長期系統行為。但是,由于必須手動合并不同時間間隔中的結果,這將使分析變得復雜。如果不需要手動合并結果,那么較小的時間間隔會導致不必要的開銷增大。因此,減小時間間隔以捕獲較短期的行為,并且在只分析長期行為就已足夠的情況下,增大時間間隔以減少開銷。

需要對每個數據庫定制時間間隔,而不是對每個 SQL 請求、命令調用或應用程序進行定制。沒有其他配置參數需要考慮。

注: 所有 WLM 統計信息表函數都返回自上次復位統計信息以來累積的統計信息。將按此配置參數指定的時間間隔定期復位統計信息。

需要注意的是,默認的服務子類 SYSDEFAULTSUBCLASS,自動為每個服務父類自動創建一個。我們可以通過系統視圖 SYSCAT.SERVICECLASSES,或者通過 db2pd 加 –serviceclasses 選項進行查看定義的服務類。

繼續在 DB2CLP 窗口中,發出 DB2PD 命令,查看我們創建的服務類情況,我們可以看到服務父類SUPER_CLASS,服務子類 SUBCLASS_RHETTE、SUBCLASS_DB2ADMIN,以及默認創建的服務子類SYSDEFAULTSUBCLASS,具體如清單7所示:

清單7 . 查看窗口的服務類

Database Partition 0 - - Database DB2TEST1 - - Active - - Up 0 days 06 : 26 : 15

Service Classes:

. . . . . . . . . .

Service Class Name = SUPER_CLASS

Service Class ID = 14

Service Class Type = Service Superclass

Default Subclass ID = 15

Service Class State = Enabled

Agent Priority = Default

Prefetch Priority = Default

Outbound Correlator = None

Work Action Set ID = N/A

Collect Activity Opt = None

Num Connections = 0

Last Statistics Reset Time = 2007 - 12 - 27 13:33:05.000000

Num Coordinator Connections = 0

Coordinator Connections HWM = 0

Associated Workload Occurrences ( WLO ) :

AppHandl [ nod - index ] WL ID WLO ID UOW ID WLO State

Service Class Name = SYSDEFAULTSUBCLASS

Service Class ID = 15

Service Class Type = Service Subclass

Parent Superclass ID = 14

Service Class State = Enabled

Agent Priority = Default

Prefetch Priority = Default

Outbound Correlator = None

Collect Activity Opt = None

Collect Aggr Activity Opt = None

Collect Aggr Request Opt = None

Act Lifetime Histogram Template ID = 1

Act Queue Time Histogram Template ID = 1

Act Execute Time Histogram Template ID = 1

Act Estimated Cost Histogram Template ID = 1

Act Interarrival Time Histogram Template ID = 1

Request Execute Time Histogram Template ID = 1

Access Count = 0

Last Stats Reset Time = 2007-12-27 13:33:05.000000

Activities HWM = 0

Activities Completed = 0

Activities Rejected = 0

Activities Aborted = 0

Associated Agents:

EDU ID AppHandl [ nod-index ] WL ID WLO ID UOW ID Activity ID

Associated Non-agent threads:

PID TID Thread Name

Service Class Name = SUBCLASS_RHETTE

Service Class ID = 16

Service Class Type = Service Subclass

Parent Superclass ID = 14

Service Class State = Enabled

Agent Priority = Default

Prefetch Priority = Default

Outbound Correlator = None

Collect Activity Opt = On all partitions with details and values

Collect Aggr Activity Opt = Base

Collect Aggr Request Opt = Base

Act Lifetime Histogram Template ID = 1

Act Queue Time Histogram Template ID = 1

Act Execute Time Histogram Template ID = 1

Act Estimated Cost Histogram Template ID = 1

Act Interarrival Time Histogram Template ID = 1

Request Execute Time Histogram Template ID = 1

Access Count = 0

Last Stats Reset Time = 2007-12-27 13:33:05.000000

Activities HWM = 0

Activities Completed = 0

Activities Rejected = 0

Activities Aborted = 0

Associated Agents:

EDU ID AppHandl [ nod-index ] WL ID WLO ID UOW ID Activity ID

Associated Non-agent threads:

PID TID Thread Name

Service Class Name = SUBCLASS_DB2ADMIN

Service Class ID = 17

Service Class Type = Service Subclass

Parent Superclass ID = 14

Service Class State = Enabled

Agent Priority = 6

Prefetch Priority = High

Outbound Correlator = None

Collect Activity Opt = None

Collect Aggr Activity Opt = None

Collect Aggr Request Opt = None

Act Lifetime Histogram Template ID = 1

Act Queue Time Histogram Template ID = 1

Act Execute Time Histogram Template ID = 1

Act Estimated Cost Histogram Template ID = 1

Act Interarrival Time Histogram Template ID = 1

Request Execute Time Histogram Template ID = 1

Access Count = 0

Last Stats Reset Time = 2007-12-27 13:33:05.000000

Activities HWM = 0

Activities Completed = 0

Activities Rejected = 0

Activities Aborted = 0

Associated Agents:

EDU ID AppHandl [ nod-index ] WL ID WLO ID UOW ID Activity ID

Associated Non-agent threads:

PID TID Thread Name

我們也可以通過控制中心查看系統視圖 SYSDEFAULTSUBCLASS,來看一下我們創建的服務類情況,具體如圖 2 所示:

講解DB2 V9.5工作負載管理之定義服務類

標簽: DB2 數據庫
主站蜘蛛池模板: 91丝袜美腿高跟国产极品老师 | 一级毛片a免费播放王色 | 国产精品国产三级国产无毒 | 一区二区三区中文国产亚洲 | 国产精品乱码在线观看 | 韩国三级欧美三级国产三级 | 在线视频精品视频 | 国产无套普通话对白 | 欧美激情视频一级视频一级毛片 | 国产精彩对白综合视频 | 日韩综合网 | 免费人成黄页在线观看视频国产 | www.激情555.com| 欧美黄色片 一级片 | 亚洲第一a亚洲 | 婷婷色香五月激情综合2020 | 日本大片成人免费网址 | 亚洲一区二区成人 | 亚洲精品国产一区二区三 | 特黄特a级特别特级特毛片 特黄特色一级aa毛片免费观看 | 视频一区二区在线播放 | 一级片aaaa | 一 级 黄 色 大片 | 日本免费va毛片在线 | 91精品国产91久久久久 | 毛片三| 高h猛烈做哭bl壮汉受小说 | 一级h片| 南京巨根无套操到你窒息 | 日本一线a视频免费观看 | 日本一级毛片视频 | 尤物网在线观看 | 激情婷婷丁香 | 免费黄色短视频 | 国产精品午夜性视频网站 | 国产亚洲欧洲一区二区三区 | 久久精品国产999久久久 | 日韩大片免费看 | 亚洲综合网址 | 免费观看a级完整视频 | 日韩毛片高清在线看 |