校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > MySQL手動注冊binlog文件造成主從異常的原因

MySQL手動注冊binlog文件造成主從異常的原因

熱門標簽:廣東人工電話機器人 日照旅游地圖標注 南通自動外呼系統軟件 芒果電話機器人自動化 石家莊電商外呼系統 申請外呼電話線路 百度地圖圖標標注中心 湖南人工外呼系統多少錢 信陽穩定外呼系統運營商

一、問題來源

有一個朋友@水米田 問我,基于POSITION的主從。他做了如下的操作

將備份的一些binlog文件加入到了目錄中
修改index文件,加入了這些binlog文件
flush binary logs
然后整個主從環境大量延遲。

二、朋友的測試

下面是另外一個朋友@徐晨亮的測試:

master上:
(root:db1@xucl:10:30:22)[(none)]> show binary logs;
+---------------------+-----------+
| Log_name      | File_size |
+---------------------+-----------+
| mysql-binlog.000031 |   1019 |
| mysql-binlog.000032 |    424 |
| mysql-binlog.000033 |    244 |
| mysql-binlog.000034 |   2332 |
| mysql-binlog.000035 |   2134 |
| mysql-binlog.000036 |  845915 |
| mysql-binlog.000037 |   11735 |
| mysql-binlog.000038 |    284 |
| mysql-binlog.000039 |    284 |
| mysql-binlog.000040 |    284 |
| mysql-binlog.000041 |    284 |
| mysql-binlog.000042 |    234 |
+---------------------+-----------+
12 rows in set (0.00 sec)
(root:db1@xucl:10:30:34)[(none)]> purge binary logs to 'mysql-binlog.000039';
Query OK, 0 rows affected (0.00 sec)
(root:db1@xucl:10:30:49)[(none)]> show binary logs;
+---------------------+-----------+
| Log_name      | File_size |
+---------------------+-----------+
| mysql-binlog.000039 |    284 |
| mysql-binlog.000040 |    284 |
| mysql-binlog.000041 |    284 |
| mysql-binlog.000042 |    234 |
+---------------------+-----------+
4 rows in set (0.00 sec)
執行插入數據
(root:db1@xucl:10:31:23)[xucl]> insert into t values(9,9);
將備份的binlog拷貝回原先的目錄并修改index文件進行注冊
[root@izbp12nspj47ypto9t6vyez logs]# ll
總用量 884
-rw-r----- 1 mysql mysql  1019 5月 20 22:03 mysql-binlog.000031
-rw-r----- 1 mysql mysql  424 5月 20 22:03 mysql-binlog.000032
-rw-r----- 1 mysql mysql  244 5月 20 22:03 mysql-binlog.000033
-rw-r----- 1 mysql mysql  2332 5月 20 22:03 mysql-binlog.000034
-rw-r----- 1 mysql mysql  2134 5月 20 22:03 mysql-binlog.000035
-rw-r----- 1 mysql mysql 845915 5月 20 22:03 mysql-binlog.000036
-rw-r----- 1 mysql mysql 11735 5月 20 22:05 mysql-binlog.000037
-rw-r----- 1 mysql mysql  284 5月 20 22:06 mysql-binlog.000038
-rw-r----- 1 mysql mysql  284 5月 21 10:28 mysql-binlog.000039
-rw-r----- 1 mysql mysql  284 5月 21 10:28 mysql-binlog.000040
-rw-r----- 1 mysql mysql  284 5月 21 10:28 mysql-binlog.000041
-rw-r----- 1 mysql mysql  491 5月 21 10:31 mysql-binlog.000042
-rw-r----- 1 mysql mysql  204 5月 21 10:30 mysql-binlog.index
主庫flush binary logs
(root:db1@xucl:10:32:51)[(none)]> flush binary logs;
Query OK, 0 rows affected (0.01 sec)
(root:db1@xucl:10:32:57)[(none)]> show binary logs;
+---------------------+-----------+
| Log_name      | File_size |
+---------------------+-----------+
| mysql-binlog.000031 |   1019 |
| mysql-binlog.000032 |    424 |
| mysql-binlog.000033 |    244 |
| mysql-binlog.000034 |   2332 |
| mysql-binlog.000035 |   2134 |
| mysql-binlog.000036 |  845915 |
| mysql-binlog.000037 |   11735 |
| mysql-binlog.000038 |    284 |
| mysql-binlog.000039 |    284 |
| mysql-binlog.000040 |    284 |
| mysql-binlog.000041 |    284 |
| mysql-binlog.000042 |    541 |
| mysql-binlog.000043 |    234 |
+---------------------+-----------+
13 rows in set (0.00 sec)
此時,slave報錯如下:
(root:db1@xucl:10:31:05)[(none)]> show slave status\G
*************************** 1. row ***************************
        Slave_IO_State:
         Master_Host: 127.0.0.1
         Master_User: repl
         Master_Port: 3306
        Connect_Retry: 60
       Master_Log_File: mysql-binlog.000035
     Read_Master_Log_Pos: 194
        Relay_Log_File: izbp12nspj47ypto9t6vyez-relay-bin.000011
        Relay_Log_Pos: 373
    Relay_Master_Log_File: mysql-binlog.000035
       Slave_IO_Running: No
      Slave_SQL_Running: Yes
       Replicate_Do_DB:
     Replicate_Ignore_DB:
      Replicate_Do_Table:
    Replicate_Ignore_Table:
   Replicate_Wild_Do_Table:
 Replicate_Wild_Ignore_Table:
          Last_Errno: 0
          Last_Error:
         Skip_Counter: 0
     Exec_Master_Log_Pos: 194
       Relay_Log_Space: 648
       Until_Condition: None
        Until_Log_File:
        Until_Log_Pos: 0
      Master_SSL_Allowed: No
      Master_SSL_CA_File:
      Master_SSL_CA_Path:
       Master_SSL_Cert:
      Master_SSL_Cipher:
        Master_SSL_Key:
    Seconds_Behind_Master: NULL
Master_SSL_Verify_Server_Cert: No
        Last_IO_Errno: 1236
        Last_IO_Error: Got fatal error 1236 from master when reading data from binary log: 'Cannot replicate GTID-transaction when @@GLOBAL.GTID_MODE = OFF, at file /storage/single/mysql3306/logs/mysql-binlog.000035, position 194.; the first event 'mysql-binlog.000039' at 234, the last event read from '/storage/single/mysql3306/logs/mysql-binlog.000035' at 259, the last byte read from '/storage/single/mysql33'
        Last_SQL_Errno: 0
        Last_SQL_Error:
 Replicate_Ignore_Server_Ids:
       Master_Server_Id: 3306
         Master_UUID: e8bdf01a-c79b-11e8-82b3-00163e088352
       Master_Info_File: mysql.slave_master_info
          SQL_Delay: 0
     SQL_Remaining_Delay: NULL
   Slave_SQL_Running_State: Slave has read all relay log; waiting for more updates
      Master_Retry_Count: 86400
         Master_Bind:
   Last_IO_Error_Timestamp: 190521 10:32:57
   Last_SQL_Error_Timestamp:
        Master_SSL_Crl:
      Master_SSL_Crlpath:
      Retrieved_Gtid_Set:
      Executed_Gtid_Set: 4c423515-6661-11e9-b767-00163e088352:1-7,
e8bdf01a-c79b-11e8-82b3-00163e088352:1-57192
        Auto_Position: 0
     Replicate_Rewrite_DB:
         Channel_Name:
      Master_TLS_Version:
1 row in set (0.00 sec)
從slave上的報錯來看,在主庫flush binary logs后,從庫又讀取注冊的binlog并且又apply了

三、現象說明

從整個測試來看,MySQL視乎將手動注冊的文件進行了傳輸和應用。報錯是因為這個庫以前是GITD_MODE=ON的,但是測試的時候已經關閉了GTID_MODE,改為了POSITION的模式,這個報錯是因為DUMP線程會進行檢測:

這個圖來自我新寫的一個系列(暫時還沒發布,大概年底才能寫好)。不管怎么說,DUMP線程已經在開始傳輸老的binlog文件了。那么原因是什么呢?下面我們將進行解釋。

四、flush binary logs對binlog的操作

flush binary logs 將包含如下操作:

  • 獲取新的binlog文件名字
  • 關閉舊的binlog
  • 關閉index file
  • 打開index file
  • 打開新的binlog
  • 將新的binlog加入到indexfile

具體可以參考函數MYSQL_BIN_LOG::new_file_impl。其中要說明一下獲取新的binlog文件名字是通過函數find_uniq_filename實現的,其中包含如下代碼:

 file_info= dir_info->dir_entry;
 for (i= dir_info->number_off_files ; i-- ; file_info++)
 {
  if (strncmp(file_info->name, start, length) == 0 
  is_number(file_info->name+length, number,0))
  {
   set_if_bigger(max_found, number);
  }
 }
...
 *next= (need_next || max_found == 0) ? max_found + 1 : max_found;

大概意思就是掃描index file文件里面的binlog文件,獲取其序號最高的一個,然后加1。棧幀如下:

#0 find_uniq_filename (name=0x7fffec5ec6d0 "/mysqldata/mysql3340/log/binlog", next=0x7fffec5ec678, need_next=true)
  at /mysqldata/percona-server-locks-detail-5.7.22/sql/binlog.cc:3679
#1 0x000000000187d208 in generate_new_log_name (new_name=0x7fffec5ec6d0 "/mysqldata/mysql3340/log/binlog", new_ext=0x0, 
  log_name=0x7ffedc011520 "/mysqldata/mysql3340/log/binlog", is_binlog=true) at /mysqldata/percona-server-locks-detail-5.7.22/sql/binlog.cc:3767
#2 0x0000000001884fdb in MYSQL_BIN_LOG::new_file_impl (this=0x2e83640, need_lock_log=false, extra_description_event=0x0)
  at /mysqldata/percona-server-locks-detail-5.7.22/sql/binlog.cc:7175
#3 0x0000000001884cbb in MYSQL_BIN_LOG::new_file_without_locking (this=0x2e83640, extra_description_event=0x0)
  at /mysqldata/percona-server-locks-detail-5.7.22/sql/binlog.cc:7099
#4 0x0000000001886b6b in MYSQL_BIN_LOG::rotate (this=0x2e83640, force_rotate=true, check_purge=0x7fffec5ecbfb)
  at /mysqldata/percona-server-locks-detail-5.7.22/sql/binlog.cc:7775
#5 0x0000000001886d53 in MYSQL_BIN_LOG::rotate_and_purge (this=0x2e83640, thd=0x7ffedc000b90, force_rotate=true)
  at /mysqldata/percona-server-locks-detail-5.7.22/sql/binlog.cc:7846

因此即便我們手動修改了index file,flush binary logs卻不會有問題,因為它實際掃描了index file文件。
同時我們也看到flush binary logs重新加載了index file,這個時候手動修改的index file就生效了,使用show binary logs就能查看到你加入的文件了。

五、主從問題的產生

binlog切換后,DUMP線程也需要讀取下一個binlog文件。我們來看看它是怎么確認讀取哪一個文件的。

在函數sender.run()中可以找到循環每個binlog文件的代碼。下面一句是尋找下一個binlog文件:

int error= mysql_bin_log.find_next_log(m_linfo, 0);

mysql_bin_log.find_next_log 包含的代碼:

 my_b_seek(index_file, linfo->index_file_offset);//進行偏移量偏移

 linfo->index_file_start_offset= linfo->index_file_offset;
 length=my_b_gets(index_file, fname, FN_REFLEN));//讀取文件名字
...
  if(normalize_binlog_name(full_fname, fname, is_relay_log))
...

 linfo->index_file_offset= my_b_tell(index_file);//偏移量從新記錄以備下一次使用

我們能夠看到DUMP線程并沒有實際掃描整個index文件,而是通過一個index文件的偏移量進行讀取。如果手動修改index文件那么偏移量就出現了錯亂。因此DUMP發送的下一個文件將是不確定的。因此出現了發送手動注冊的binlog文件給從庫的現象,這種情況下可能出現下面情況:

  1. 如果是GTID_MODE 關閉,使用POSITION那么這種情況一定報錯,比如重復的行。
  2. 如果是GTID_MODE 和AUTO_POSITION=1,那么DUMP線程會進行GTID的過濾不發送,因為Event不發送所以延遲會持續一段時間為0。
  3. 如果是GTID_MODE 和AUTO_POSITION=0,那么SQL線程應用GITD_EVENT的時候會進行過濾,延遲可能出現很大的情況。

盡管GTID可能可以屏蔽這種問題,但是DUMP線程已經在考慮發送老的binlog文件了,這是不合適的。

六、purge binary logs能夠維護這個偏移量

為什么purge binary logs不會出現問題呢,因為在purge binary logs的語句下,會維護這個偏移量如下:

 virtual void operator()(THD *thd)
 {
  LOG_INFO* linfo;
  mysql_mutex_lock(thd->LOCK_thd_data);
  if ((linfo= thd->current_linfo))//b binlog.cc:2829
  {
   /*
    Index file offset can be less that purge offset only if
    we just started reading the index file. In that case
    we have nothing to adjust.
   */
   if (linfo->index_file_offset  m_purge_offset)
    linfo->fatal = (linfo->index_file_offset != 0);
   else
    linfo->index_file_offset -= m_purge_offset;
  }
  mysql_mutex_unlock(thd->LOCK_thd_data);

我們可以看到linfo->index_file_offset -= m_purge_offset;這樣一個語句。下面是棧幀:

#0 Adjust_offset::operator() (this=0x7fffec5ec720, thd=0x7ffedc000be0) at /mysqldata/percona-server-locks-detail-5.7.22/sql/binlog.cc:2831
#1 0x0000000000eef320 in Do_THD::operator() (this=0x7fffec5ec6a0, thd=0x7ffedc000be0) at /mysqldata/percona-server-locks-detail-5.7.22/sql/mysqld_thd_manager.cc:46
#2 0x0000000000eefa0f in std::for_eachTHD**, Do_THD> (__first=0x3003358, __last=0x3003368, __f=...)
  at /usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/bits/stl_algo.h:4200
#3 0x0000000000eeefc0 in Global_THD_manager::do_for_all_thd (this=0x3003340, func=0x7fffec5ec720)
  at /mysqldata/percona-server-locks-detail-5.7.22/sql/mysqld_thd_manager.cc:273
#4 0x000000000187ae0a in adjust_linfo_offsets (purge_offset=0) at /mysqldata/percona-server-locks-detail-5.7.22/sql/binlog.cc:2873
#5 0x0000000001883239 in MYSQL_BIN_LOG::remove_logs_from_index (this=0x2e83640, log_info=0x7fffec5ec7d0, need_update_threads=true)
  at /mysqldata/percona-server-locks-detail-5.7.22/sql/binlog.cc:6352
#6 0x0000000001883676 in MYSQL_BIN_LOG::purge_logs (this=0x2e83640, to_log=0x7fffec5eca80 "/mysqldata/mysql3340/log/binlog.000001", included=false, 
  need_lock_index=true, need_update_threads=true, decrease_log_space=0x0, auto_purge=false) at /mysqldata/percona-server-locks-detail-5.7.22/sql/binlog.cc:6469
#7 0x000000000187b4b5 in purge_master_logs (thd=0x7ffee0000c00, to_log=0x7ffee0006600 "binlog.000001")
  at /mysqldata/percona-server-locks-detail-5.7.22/sql/binlog.cc:3127

七、測試POSITION模式下的報錯

1、 環境

mysql> show binary logs;
+---------------+-----------+
| Log_name   | File_size |
+---------------+-----------+
| binlog.000001 |    198 |
| binlog.000002 |    154 |
+---------------+-----------+
2 rows in set (0.00 sec)

mysql> show create table testcp \G;
*************************** 1. row ***************************
    Table: testcp
Create Table: CREATE TABLE `testcp` (
 `id` int(11) NOT NULL,
 PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
1 row in set (0.00 sec)

ERROR: 
No query specified

2、執行一個語句

主庫:

mysql> insert into testcp values(20);
Query OK, 1 row affected (0.43 sec)

mysql> select * from testcp;
+----+
| id |
+----+
| 10 |
| 20 |
+----+
2 rows in set (0.01 sec)

從庫:

mysql> show slave status \G;
*************************** 1. row ***************************
        Slave_IO_State: Waiting for master to send event
         Master_Host: 192.168.99.41
         Master_User: repl
         Master_Port: 3340
        Connect_Retry: 60
       Master_Log_File: binlog.000002
     Read_Master_Log_Pos: 417
        Relay_Log_File: relay.000004
        Relay_Log_Pos: 624
    Relay_Master_Log_File: binlog.000002
       Slave_IO_Running: Yes
      Slave_SQL_Running: Yes
...
mysql> select * from testcp;
+----+
| id |
+----+
| 10 |
| 20 |
+----+  

這個時候DUMP線程index file偏移指針如下:

3、主庫執行purge binary logs

做之前拷貝原有binlog.000001為binlog.000001bak因為等會要拷貝回去

mysql> purge binary logs to 'binlog.000002';
Query OK, 0 rows affected (3.14 sec)

mysql> show binary logs;
+---------------+-----------+
| Log_name   | File_size |
+---------------+-----------+
| binlog.000002 |    417 |
+---------------+-----------+
1 row in set (0.00 sec)

因為purge binary logs命令會維護偏移指針,這個時候DUMP線程的index file偏移指針如下:

4、手動更改

將binlog.000001bak拷貝為binlog.000001,然后修改index file將binlog.000001加入回去,然后flush binary logs如下:

mysql> flush binary logs;
Query OK, 0 rows affected (0.15 sec)

mysql> show binary logs;
+---------------+-----------+
| Log_name   | File_size |
+---------------+-----------+
| binlog.000001 |     198 |
| binlog.000002 |    461 |
+---------------+-----------+
2 rows in set (0.00 sec)

手動完成這個工作并不會維護DUMP線程的index file偏移指針,因此如下:

就這樣DUMP線程重新發送了一次binlog.000002的內容,POSITION的從庫只能報錯了如下:

mysql> select * from replication_applier_status_by_worker \G
*************************** 1. row ***************************
     CHANNEL_NAME: 
      WORKER_ID: 1
      THREAD_ID: NULL
    SERVICE_STATE: OFF
LAST_SEEN_TRANSACTION: ANONYMOUS
  LAST_ERROR_NUMBER: 1062
  LAST_ERROR_MESSAGE: Worker 1 failed executing transaction 'ANONYMOUS' at master log binlog.000002, end_log_pos 386; Could not execute Write_rows event on table testmts.testcp; Duplicate entry '20' for key 'PRIMARY', Error_code: 1062; handler error HA_ERR_FOUND_DUPP_KEY; the event's master log binlog.000002, end_log_pos 386
 LAST_ERROR_TIMESTAMP: 2019-05-21 14:46:26

八、總結

這種操作非常不規范,如果實在要這么做考慮如下步驟:

  • 關閉全部的從庫
  • 手動注冊binlog文件,修改index 文件
  • flush binary logs
  • 啟動從庫

這種情況下將會重新初始化DUMP的偏移量指針,應該是沒有問題的。還是盡量不要考慮這么做。

以上就是MySQL手動注冊binlog文件造成主從異常的原因的詳細內容,更多關于MySQL 主從異常的資料請關注腳本之家其它相關文章!

您可能感興趣的文章:
  • MySQL 查看鏈接及殺掉異常鏈接的方法
  • MySQL數據庫連接異常匯總(值得收藏)
  • mysql5.7.21啟動異常的修復方法
  • mysql innodb 異常修復經驗分享
  • MySQL定義異常和異常處理詳解
  • MySQL存儲過程中一些基本的異常處理教程
  • 分析一個MySQL的異常查詢的案例
  • MySQL異常處理淺析
  • 分析MySQL拋出異常的幾種常見解決方式

標簽:沈陽 合肥 呼和浩特 惠州 牡丹江 阿里 天津 公主嶺

巨人網絡通訊聲明:本文標題《MySQL手動注冊binlog文件造成主從異常的原因》,本文關鍵詞  MySQL,手動,注冊,binlog,文件,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《MySQL手動注冊binlog文件造成主從異常的原因》相關的同類信息!
  • 本頁收集關于MySQL手動注冊binlog文件造成主從異常的原因的相關信息資訊供網民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    欧美日本国产视频| 在线观看av一区| 国产亚洲欧洲一区高清在线观看| 美女诱惑一区二区| 日韩欧美一级二级| 国产在线一区观看| 中文幕一区二区三区久久蜜桃| 春色校园综合激情亚洲| 日韩美女视频一区| 欧美日韩一区二区在线视频| 日韩电影在线一区二区| 26uuu精品一区二区三区四区在线| 激情久久五月天| 成人欧美一区二区三区在线播放| 色综合久久中文字幕| 天天影视涩香欲综合网| 精品第一国产综合精品aⅴ| 丁香啪啪综合成人亚洲小说| 一区二区成人在线观看| 日韩午夜激情视频| av在线这里只有精品| 丝袜美腿亚洲一区| 国产欧美一区二区精品仙草咪| 色噜噜夜夜夜综合网| 免费欧美日韩国产三级电影| 国产欧美日韩综合| 欧美中文字幕一区二区三区| 麻豆国产欧美一区二区三区| 国产精品久久久久久久久动漫| 精品视频色一区| 国产不卡一区视频| 视频一区二区国产| 国产精品毛片久久久久久久| 这里只有精品99re| 99vv1com这只有精品| 久久电影国产免费久久电影 | 日韩欧美国产综合| 成人爱爱电影网址| 日韩黄色片在线观看| 国产精品视频看| 日韩一区二区免费视频| 91麻豆自制传媒国产之光| 久久精品国产久精国产| 一区二区三区成人| 久久精品一二三| 欧美一区二区免费视频| 色综合天天综合在线视频| 日韩黄色一级片| 亚洲欧美电影一区二区| 国产欧美精品区一区二区三区 | www.亚洲色图| 国产一区二区电影| 秋霞影院一区二区| 亚洲制服丝袜在线| 国产精品成人免费精品自在线观看| 日韩欧美电影一区| 欧美性xxxxxxxx| 99亚偷拍自图区亚洲| 国产馆精品极品| 久久精品国产999大香线蕉| 一本久久综合亚洲鲁鲁五月天| 国产欧美久久久精品影院 | 日韩视频免费直播| 在线观看免费视频综合| 成人18精品视频| 韩国v欧美v亚洲v日本v| 久久国产剧场电影| 免费一级欧美片在线观看| 亚洲电影视频在线| 亚洲欧美成aⅴ人在线观看| 中文字幕第一区综合| 国产亚洲欧美激情| 国产精品亚洲视频| 一区二区三区欧美久久| 亚洲欧洲成人精品av97| 国产精品麻豆久久久| 日本一区二区视频在线| 国产色91在线| 中文字幕第一区| 国产喷白浆一区二区三区| 欧美国产精品v| 国产日韩欧美精品一区| 欧美国产精品一区二区三区| 亚洲国产精品二十页| 国产精品欧美经典| 国产精品久久久久精k8| 亚洲欧美另类久久久精品| 亚洲人成伊人成综合网小说| 亚洲女女做受ⅹxx高潮| 亚洲韩国一区二区三区| 亚洲不卡一区二区三区| 日韩va欧美va亚洲va久久| 蜜臀精品一区二区三区在线观看| 99精品欧美一区二区三区小说| 激情欧美一区二区| 久久成人免费日本黄色| 精品中文字幕一区二区| 国产一区在线不卡| 波多野结衣的一区二区三区| 91色九色蝌蚪| 在线免费观看一区| 69p69国产精品| 日韩一区二区三区电影在线观看 | 国产麻豆欧美日韩一区| 国产精品中文字幕一区二区三区| 成人天堂资源www在线| av一本久道久久综合久久鬼色| 色妹子一区二区| 日韩一区二区视频| 国产日韩欧美在线一区| 一区二区三区精品久久久| 日本亚洲视频在线| 国产大片一区二区| 欧洲人成人精品| 欧美xingq一区二区| 日韩久久一区二区| 免费在线看成人av| 国产伦精品一区二区三区免费 | 欧美日韩国产高清一区| www国产成人免费观看视频 深夜成人网| 国产日本欧美一区二区| 亚洲成人高清在线| 国产一区二区不卡在线| 欧美亚洲国产一区二区三区va| 精品国产1区二区| 亚洲一区二区精品视频| 国产综合色产在线精品| 欧美性大战久久久久久久| 久久色在线观看| 亚洲成人免费看| 丰满白嫩尤物一区二区| 91精品国产品国语在线不卡| 综合激情网...| 日本欧美在线观看| 99久久婷婷国产| 久久久www免费人成精品| 婷婷亚洲久悠悠色悠在线播放 | 国产乱理伦片在线观看夜一区| 色拍拍在线精品视频8848| 久久影音资源网| 日韩成人一级片| 欧美性受xxxx黑人xyx| 国产精品麻豆久久久| 国模冰冰炮一区二区| 91精品国产欧美日韩| 亚洲一区二区三区在线| 97成人超碰视| 国产欧美一区二区精品性| 精一区二区三区| 欧美一级日韩一级| 亚洲午夜在线视频| 91在线国产福利| 欧美国产精品v| 国产一区二区福利视频| 欧美sm极限捆绑bd| 免费观看久久久4p| 欧美一级搡bbbb搡bbbb| 午夜精彩视频在线观看不卡| 一本久久a久久免费精品不卡| 免费成人在线视频观看| 在线观看亚洲精品| 亚洲色图欧美激情| thepron国产精品| 久久中文字幕电影| 韩国av一区二区| 欧美精品一区二区三区久久久| 日本不卡一区二区| 欧美精品少妇一区二区三区| 亚洲综合成人在线视频| 色综合天天视频在线观看| 亚洲人成网站色在线观看| 99久久精品国产一区| 亚洲人成网站在线| 在线观看中文字幕不卡| 亚洲尤物视频在线| 欧美欧美欧美欧美首页| 日本网站在线观看一区二区三区| 91精品福利在线一区二区三区| 日韩激情中文字幕| 日韩欧美一级片| 国产在线麻豆精品观看| 国产性做久久久久久| www.欧美日韩国产在线| 一区二区三区在线视频免费观看 | 亚洲国产一区二区视频| 欧美日韩一二三| 日产精品久久久久久久性色| 欧美xxxx在线观看| 国产高清在线精品| 中文字幕一区二区三| 色一情一伦一子一伦一区| 五月激情综合网| 精品乱人伦一区二区三区| 国产精品99久久久久| 亚洲乱码国产乱码精品精可以看 | 久久久久久久久岛国免费| 成人av在线资源网| 亚洲国产综合91精品麻豆| 制服丝袜中文字幕一区| 国产精品自拍av|