欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

數(shù)據(jù)遷移方法和裝置與流程

文檔序號:12363827閱讀:393來源:國知局
數(shù)據(jù)遷移方法和裝置與流程

本發(fā)明涉及網(wǎng)絡(luò)數(shù)據(jù)處理領(lǐng)域,特別是涉及一種數(shù)據(jù)遷移方法和裝置。



背景技術(shù):

由于用戶量增長、節(jié)假日活動期間請求量暴增或是服務(wù)器軟硬件不可預(yù)知的故障等,使得互聯(lián)網(wǎng)后臺的服務(wù)器經(jīng)常會遇到需要將數(shù)據(jù)庫的數(shù)據(jù)進(jìn)行緊急遷移的情況。

然而,傳統(tǒng)數(shù)據(jù)遷移方法在將數(shù)據(jù)由舊數(shù)據(jù)庫遷移到新數(shù)據(jù)庫時,需要先停掉舊數(shù)據(jù)庫的服務(wù),將數(shù)據(jù)拷貝到新數(shù)據(jù)庫中,然后再用新數(shù)據(jù)庫代替舊數(shù)據(jù)庫提供服務(wù)。在數(shù)據(jù)遷移的過程中,由于數(shù)據(jù)庫停止服務(wù)會對用戶使用造成非常嚴(yán)重的影響,并且隨著數(shù)據(jù)量的增加,會給用戶帶來不可估量的損失。



技術(shù)實現(xiàn)要素:

基于此,有必要針對數(shù)據(jù)遷移過程中需要停止數(shù)據(jù)庫的服務(wù)而給用戶帶來損失的技術(shù)問題,提供一種數(shù)據(jù)遷移方法和裝置。

一種數(shù)據(jù)遷移方法,所述方法包括:

將第一數(shù)據(jù)庫中的數(shù)據(jù)遷移到第二數(shù)據(jù)庫中;

接收來自用戶終端的讀請求和寫請求;

檢測數(shù)據(jù)的遷移狀態(tài);

根據(jù)數(shù)據(jù)的遷移狀態(tài)處理所述讀請求和寫請求。

一種數(shù)據(jù)遷移裝置,所述裝置包括:

遷移模塊,用于將第一數(shù)據(jù)庫中的數(shù)據(jù)遷移到第二數(shù)據(jù)庫中;

請求接收模塊,用于接收來自用戶終端的讀請求和寫請求;

檢測模塊,用于檢測數(shù)據(jù)的遷移狀態(tài);

處理模塊,用于根據(jù)數(shù)據(jù)的遷移狀態(tài)處理所述讀請求和寫請求。

上述數(shù)據(jù)遷移方法和裝置,將數(shù)據(jù)從第一數(shù)據(jù)庫中遷移到第二數(shù)據(jù)庫的過程中,在接收來自用戶終端的讀請求和寫請求之后,通過檢測數(shù)據(jù)的遷移狀態(tài)并根據(jù)所述遷移狀態(tài)處理所述讀請求和寫請求,這樣在數(shù)據(jù)遷移的過程也可以給用戶提供讀寫服務(wù),不會停止數(shù)據(jù)庫的服務(wù)而給用戶帶來不必要的損失。

附圖說明

圖1為一個實施例中數(shù)據(jù)遷移系統(tǒng)的應(yīng)用環(huán)境圖;

圖2為一個實施例中服務(wù)器的結(jié)構(gòu)示意圖;

圖3為一個實施例中數(shù)據(jù)遷移方法的流程示意圖;

圖4為一個實施例中將讀請求分配給第一數(shù)據(jù)庫或第二數(shù)據(jù)庫處理的流程示意圖;

圖5為一個實施例中將第一數(shù)據(jù)庫中的數(shù)據(jù)遷移到第二數(shù)據(jù)庫中的流程示意圖;

圖6為一個具體應(yīng)用場景中數(shù)據(jù)遷移的第一狀態(tài)圖;

圖7為一個具體應(yīng)用場景中數(shù)據(jù)遷移的第二狀態(tài)圖;

圖8為一個具體應(yīng)用場景中數(shù)據(jù)遷移的第三狀態(tài)圖;

圖9為一個實施例中數(shù)據(jù)遷移裝置的結(jié)構(gòu)框圖;

圖10為一個實施例中遷移模塊的結(jié)構(gòu)框圖。

具體實施方式

為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下結(jié)合附圖及實施例,對本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。

如圖1所示,在一個實施例中,提供了一種數(shù)據(jù)遷移系統(tǒng),包括多個終端102和服務(wù)器104。其中,終端102可以是手機、個人筆記本、平板電腦或者臺式計算機等;服務(wù)器104可以是一個或多個服務(wù)器。用戶終端102上運行有請求應(yīng)用程序,至少提供請求發(fā)送功能。服務(wù)器104用于為終端102上運行的請 求應(yīng)用程序提供服務(wù)支持。用戶可以通過終端102向服務(wù)器104發(fā)送各種讀請求和寫請求,服務(wù)器104則通過其內(nèi)部的數(shù)據(jù)庫來處理所述各種讀請求和寫請求。用戶發(fā)送的讀請求和寫請求所對應(yīng)的數(shù)據(jù)存儲在服務(wù)器104的數(shù)據(jù)庫中,數(shù)據(jù)可以在不同的數(shù)據(jù)庫之間進(jìn)行遷移。

在一個實施例中,上述圖1中的服務(wù)器104的內(nèi)部結(jié)構(gòu)示意圖如圖2所示。該服務(wù)器包括通過系統(tǒng)總線連接的處理器、內(nèi)存、存儲介質(zhì)、網(wǎng)絡(luò)接口。服務(wù)器104通過所述網(wǎng)絡(luò)接口接收來自用戶終端102的讀請求和寫請求。其中,該服務(wù)器的存儲介質(zhì)存儲有操作系統(tǒng)、數(shù)據(jù)庫和一種數(shù)據(jù)遷移裝置,數(shù)據(jù)庫可以是一個或兩個以上數(shù)據(jù)庫。該數(shù)據(jù)遷移裝置用于實現(xiàn)一種數(shù)據(jù)遷移方法。該服務(wù)器的處理器被配置為執(zhí)行一種數(shù)據(jù)遷移方法。

如圖3所示,在一個實施例中,提供了一種數(shù)據(jù)遷移方法,本實施例以該方法應(yīng)用于上述圖1中的服務(wù)器來舉例說明。該數(shù)據(jù)遷移方法具體包括如下步驟:

步驟S302:將第一數(shù)據(jù)庫中的數(shù)據(jù)遷移到第二數(shù)據(jù)庫中。

具體地,DB(database,數(shù)據(jù)庫)指的是以一定方式儲存在一起、能為多個用戶共享、具有盡可能小的冗余度、與應(yīng)用程序彼此獨立的數(shù)據(jù)集合。數(shù)據(jù)庫屬于應(yīng)用系統(tǒng),可以安裝在服務(wù)器上。

第一數(shù)據(jù)庫和第二數(shù)據(jù)庫可以安裝在同一服務(wù)器上也可以分別安裝在不同服務(wù)器上。在本實施例中,第一數(shù)據(jù)庫和第二數(shù)據(jù)庫安裝在同一服務(wù)器上。

步驟S304:接收來自用戶終端的讀請求和寫請求。

具體地,用戶終端上運行有請求應(yīng)用,請求應(yīng)用的頁面中設(shè)置有請求觸發(fā)控件,比如一個按鈕或一個超鏈接。用戶通過用戶終端的觸摸屏、按鈕或者軌跡球等輸入設(shè)備輸入觸發(fā)指令,使得用戶終端向服務(wù)器發(fā)送讀請求或?qū)懻埱?。讀請求不需要更改數(shù)據(jù),如安全知識瀏覽請求,而寫請求則需要更改數(shù)據(jù),如密碼修改請求。

在本實施例中,服務(wù)器可以接收來自一個用戶終端的一個以上的請求,也可以接收來自兩個以上用戶終端的請求。

步驟S306:檢測數(shù)據(jù)的遷移狀態(tài)。

具體的,數(shù)據(jù)開始從一個數(shù)據(jù)庫向另一個數(shù)據(jù)庫進(jìn)行遷移后,其遷移狀態(tài)至少包括正在遷移和遷移完成兩種。

在本實施例中,步驟S306具體包括:檢測第一數(shù)據(jù)庫中的數(shù)據(jù)是否全部遷移到第二數(shù)據(jù)庫中,若是,則數(shù)據(jù)的遷移狀態(tài)為遷移完成,若否,則數(shù)據(jù)的遷移狀態(tài)為正在遷移。

步驟S308:根據(jù)數(shù)據(jù)的遷移狀態(tài)處理所述讀請求和寫請求。

具體地,若數(shù)據(jù)的遷移狀態(tài)為正在遷移,則將寫請求分配給第二數(shù)據(jù)庫處理,將讀請求分配給第一數(shù)據(jù)庫或第二數(shù)據(jù)庫處理;若數(shù)據(jù)的遷移狀態(tài)為遷移完成,則將讀請求和寫請求均分配給第二數(shù)據(jù)庫處理。

舉例說明,若數(shù)據(jù)的遷移狀態(tài)為正在遷移,服務(wù)器在收到讀請求之后,會在第二數(shù)據(jù)庫中查找所述讀請求所對應(yīng)的數(shù)據(jù)。如果第二數(shù)據(jù)庫中有所述讀請求所對應(yīng)的數(shù)據(jù),服務(wù)器會在程序運行過程中通過邏輯進(jìn)程(即sever進(jìn)程)將所述讀請求先分配給第二數(shù)據(jù)庫處理,即由第二數(shù)據(jù)庫為用戶提供服務(wù)。如果在查找過程中,發(fā)現(xiàn)第二數(shù)據(jù)庫中沒有所述讀請求所對應(yīng)的數(shù)據(jù),說明對應(yīng)的數(shù)據(jù)還沒有遷移到第二數(shù)據(jù)庫中來,這時邏輯進(jìn)程會將所述讀請求再分配給第一數(shù)據(jù)庫處理。

上述數(shù)據(jù)遷移方法,將數(shù)據(jù)從第一數(shù)據(jù)庫中遷移到第二數(shù)據(jù)庫的過程中,服務(wù)器在接收來自用戶終端的讀請求和寫請求之后,通過檢測數(shù)據(jù)的遷移狀態(tài)并根據(jù)所述遷移狀態(tài)來處理所述讀請求和寫請求,這樣在數(shù)據(jù)遷移的過程也可以給用戶提供讀寫服務(wù),不會停止數(shù)據(jù)庫的服務(wù)而給用戶帶來不必要的損失。

請參照圖4,為一實施例中將讀請求分配給第一數(shù)據(jù)庫或第二數(shù)據(jù)庫處理的流程示意圖。

在本實施例中,將讀請求分配給第一數(shù)據(jù)庫或第二數(shù)據(jù)庫處理具體包括:

步驟S402:查找第二數(shù)據(jù)庫中是否有所述讀請求所對應(yīng)的數(shù)據(jù),若是,執(zhí)行步驟S404,若否,則執(zhí)行步驟S406。

步驟S402:將所述讀請求分配給第二數(shù)據(jù)庫處理。

步驟S406:將所述讀請求分配給第一數(shù)據(jù)庫處理。

舉例說明,假如用戶通過終端發(fā)送讀請求,以讀取數(shù)據(jù)A,那么就會在第 二數(shù)據(jù)庫中查找所述讀請求對應(yīng)的數(shù)據(jù)A。如果第二數(shù)據(jù)庫中有數(shù)據(jù)A,則會將所述讀請求分配給第二數(shù)據(jù)庫處理,即通過第二數(shù)據(jù)庫將數(shù)據(jù)A返回到用戶終端。如果第二數(shù)據(jù)庫中沒有所述讀請求所對應(yīng)的數(shù)據(jù)A,說明數(shù)據(jù)A還未從第一數(shù)據(jù)庫中遷移到第二數(shù)據(jù)庫,因此,需要將所述讀請求分配給第一數(shù)據(jù)庫處理,由第一數(shù)據(jù)庫將數(shù)據(jù)A返回到用戶終端。

請參照圖5,為一實施例中將第一數(shù)據(jù)庫中的數(shù)據(jù)遷移到第二數(shù)據(jù)庫中的流程示意圖。

步驟S502:復(fù)制第一數(shù)據(jù)庫中的數(shù)據(jù)。

步驟S504:檢測第二數(shù)據(jù)庫中是否已存在所述數(shù)據(jù)或者第二數(shù)據(jù)庫是否有接收到所述數(shù)據(jù)對應(yīng)的刪除請求,若是,執(zhí)行步驟S506;若否,執(zhí)行步驟S508。

步驟S506:將所述數(shù)據(jù)直接丟掉。

步驟S508:將所述數(shù)據(jù)粘貼到第二數(shù)據(jù)庫中。

具體地,寫請求包括刪除請求。在本實施例中,若所述刪除請求對應(yīng)的數(shù)據(jù)還未被遷移到第二數(shù)據(jù)庫,則所述刪除請求處理后會以標(biāo)記方式在第二數(shù)據(jù)庫中進(jìn)行記錄,在所述數(shù)據(jù)遷移到第二數(shù)據(jù)庫時,如果檢測到第二數(shù)據(jù)庫有接收到所述數(shù)據(jù)對應(yīng)的刪除請求,即檢測到第二數(shù)據(jù)庫中記錄有相應(yīng)的標(biāo)記,這樣所述數(shù)據(jù)直接會被丟掉。

舉例說明,第二數(shù)據(jù)庫在處理刪除請求時,會在數(shù)據(jù)表格中增加一列作為數(shù)據(jù)的預(yù)留字段,若所述刪除請求對應(yīng)的數(shù)據(jù)還未被遷移到第二數(shù)據(jù)庫,則所述刪除請求處理后會在所述預(yù)留字段處標(biāo)記,表示其對應(yīng)的數(shù)據(jù)已被刪除。

下面通過具體應(yīng)用場景來說明上述數(shù)據(jù)遷移方法的原理,該應(yīng)用場景以臺式計算機作為終端、第一數(shù)據(jù)庫和第二數(shù)據(jù)庫安裝在同一服務(wù)器上、用戶通過臺式計算機向服務(wù)器發(fā)送安全知識瀏覽請求和密碼修改請求為例進(jìn)行說明。

請參照圖6,在數(shù)據(jù)還沒遷移之前,用戶通過臺式計算機610向賬號安全中心對應(yīng)的服務(wù)器620分別發(fā)送安全知識瀏覽請求和密碼修改請求。因為這些請求對應(yīng)的相關(guān)數(shù)據(jù)在沒遷移之前都被存儲在第一數(shù)據(jù)庫622中,所以服務(wù)器620在收到請求之后會在程序運行過程中通過邏輯進(jìn)程將安全知識瀏覽請求和密碼 修改請求分配給第一數(shù)據(jù)庫622處理,即由第一數(shù)據(jù)庫622為用戶提供服務(wù)。

賬號安全中心是一種賬號保護(hù)軟件,能為用戶提供一站式的軟件安全服務(wù),包括了密碼保護(hù)、賬號保護(hù)、安全體檢、修改密碼、賬號申訴等功能,讓賬號更加安全可靠。

如今,用戶通過網(wǎng)絡(luò)注冊的各種賬號都需要填寫一些個人信息,而這些賬號的安全性對用戶非常重要。當(dāng)用戶想了解一些與賬號保護(hù)相關(guān)的安全知識,就可以向服務(wù)器發(fā)送安全知識瀏覽請求。服務(wù)器在接收請求之后,通過運行一系列的程序,對所述安全知識瀏覽請求進(jìn)行處理,并通過一定方式將存儲在數(shù)據(jù)庫中的相關(guān)數(shù)據(jù)反饋給用戶終端。

每一個賬號都有設(shè)置一個對應(yīng)密碼,而這個密碼對應(yīng)的數(shù)據(jù)會被存儲在提供服務(wù)的數(shù)據(jù)庫中。假如用戶覺得之前設(shè)置的密碼安全度不夠高,需要對密碼進(jìn)行修改。這時,用戶就可以向服務(wù)器發(fā)送密碼修改請求。服務(wù)器在接收請求之后,通過運行一系列的程序,對所述密碼修改請求進(jìn)行處理,這時便需要用戶寫入一個新密碼存入到數(shù)據(jù)庫中來代替之前的密碼,即之前的密碼對應(yīng)的數(shù)據(jù)會被刪除。

請參照圖7,由于一些不可預(yù)測的故障,使得第一數(shù)據(jù)庫622中的數(shù)據(jù)需要緊急遷移到第二數(shù)據(jù)庫624中。在數(shù)據(jù)遷移的過程中,用戶通過臺式計算機610向賬號安全中心對應(yīng)的服務(wù)器620發(fā)送了安全知識瀏覽請求。因為檢測到第一數(shù)據(jù)庫622中的數(shù)據(jù)還沒有全部遷移到第二數(shù)據(jù)庫624中,則數(shù)據(jù)的遷移狀態(tài)為正在遷移,那么該請求對應(yīng)的數(shù)據(jù)可能已遷移到第二數(shù)據(jù)庫624中,也有可能還沒有遷移到第二數(shù)據(jù)庫624中。因此,服務(wù)器620在收到該請求之后,會在第二數(shù)據(jù)庫624中查找安全知識瀏覽請求所對應(yīng)的數(shù)據(jù)。如果第二數(shù)據(jù)庫624中有安全知識瀏覽請求所對應(yīng)的數(shù)據(jù),服務(wù)器620會在程序運行過程中通過邏輯進(jìn)程將安全知識瀏覽請求先分配給第二數(shù)據(jù)庫624處理,即由第二數(shù)據(jù)庫624為用戶提供服務(wù)。如果在查找過程中,發(fā)現(xiàn)第二數(shù)據(jù)庫624中沒有所述安全知識瀏覽請求所對應(yīng)的數(shù)據(jù),說明對應(yīng)的數(shù)據(jù)還沒有遷移到第二數(shù)據(jù)庫624中來,這時邏輯進(jìn)程會將所述安全知識瀏覽請求再分配給第一數(shù)據(jù)庫622處理。

在數(shù)據(jù)遷移的過程中,假如用戶通過臺式計算機610向賬號安全中心對應(yīng) 的服務(wù)器620發(fā)送了密碼修改請求。因為密碼修改請求屬于寫請求,服務(wù)器620在對用戶輸入的新密碼對應(yīng)的數(shù)據(jù)進(jìn)行存儲之后還需要將之前的密碼對應(yīng)的數(shù)據(jù)進(jìn)行刪除。這時,如果之前的密碼對應(yīng)的數(shù)據(jù)還沒有遷移到第二數(shù)據(jù)庫624中,則會以標(biāo)記方式在第二數(shù)據(jù)庫624中進(jìn)行記錄,在之前的密碼對應(yīng)的數(shù)據(jù)遷移到第二數(shù)據(jù)庫624時,如果檢測到第二數(shù)據(jù)庫624中記錄有相應(yīng)的標(biāo)記,這樣之前的密碼對應(yīng)的數(shù)據(jù)直接會被丟掉。

請參照圖8,當(dāng)?shù)谝粩?shù)據(jù)庫622中的數(shù)據(jù)全部遷移到第二數(shù)據(jù)庫624之后,用戶通過臺式計算機610向賬號安全中心對應(yīng)的服務(wù)器620分別發(fā)送安全知識瀏覽請求和密碼修改請求,因為檢測到第一數(shù)據(jù)庫622中的數(shù)據(jù)全部遷移到第二數(shù)據(jù)庫624中,則數(shù)據(jù)的遷移狀態(tài)為遷移完成,服務(wù)器620在收到請求之后會在程序運行過程中通過邏輯進(jìn)程將安全知識瀏覽請求和密碼修改請求均分配給第二數(shù)據(jù)庫624處理,即由第二數(shù)據(jù)庫624為用戶提供服務(wù)。

如圖9所示,在一個實施例中,提供了一種數(shù)據(jù)遷移裝置900,具有實現(xiàn)上述各個實施例的數(shù)據(jù)遷移方法的功能。該數(shù)據(jù)遷移裝置900包括遷移模塊902、請求接收模塊904、檢測模塊906以及處理模塊908。

遷移模塊902用于將第一數(shù)據(jù)庫中的數(shù)據(jù)遷移到第二數(shù)據(jù)庫中。

請求接收模塊904用于接收來自用戶終端的讀請求和寫請求。

檢測模塊906用于檢測數(shù)據(jù)的遷移狀態(tài)。

具體地,檢測模塊906用于檢測第一數(shù)據(jù)庫中的數(shù)據(jù)是否全部遷移到第二數(shù)據(jù)庫中,若是,則數(shù)據(jù)的遷移狀態(tài)為遷移完成,若否,則數(shù)據(jù)的遷移狀態(tài)為正在遷移。

處理模塊908用于根據(jù)數(shù)據(jù)的遷移狀態(tài)處理所述讀請求和寫請求。

具體地,處理模塊908包括分配單元,若數(shù)據(jù)的遷移狀態(tài)為正在遷移,則所述分配單元用于將寫請求分配給第二數(shù)據(jù)庫處理,將讀請求分配給第一數(shù)據(jù)庫或第二數(shù)據(jù)庫處理;若數(shù)據(jù)的遷移狀態(tài)為遷移完成,則所述分配單元用于將讀請求和寫請求均分配給第二數(shù)據(jù)庫處理。

其中,若數(shù)據(jù)的遷移狀態(tài)為正在遷移,所述分配單元將讀請求分配給第一 數(shù)據(jù)庫或第二數(shù)據(jù)庫處理具體為:若數(shù)據(jù)的遷移狀態(tài)為正在遷移,則所述分配單元用于查找第二數(shù)據(jù)庫中是否有所述讀請求所對應(yīng)的數(shù)據(jù),若是,則將所述讀請求分配給第二數(shù)據(jù)庫處理;若否,則將所述讀請求分配給第一數(shù)據(jù)庫處理。

如圖10所示,在一個實施例中,提供了一種遷移模塊1000,該遷移模塊1000包括復(fù)制單元1002、檢測單元1004、刪除單元1006及粘貼單元1008。

復(fù)制單元1002用于復(fù)制第一數(shù)據(jù)庫中的數(shù)據(jù)。

檢測單元1004用于檢測第二數(shù)據(jù)庫中是否已存在所述數(shù)據(jù)或者第二數(shù)據(jù)庫是否有接收到所述數(shù)據(jù)對應(yīng)的刪除請求。

刪除單元1006用于將所述數(shù)據(jù)直接丟掉。

粘貼單元1008用于將所述數(shù)據(jù)粘貼到第二數(shù)據(jù)庫中。

本領(lǐng)域普通技術(shù)人員可以理解實現(xiàn)上述實施例方法中的全部或部分流程,是可以通過計算機程序來指令相關(guān)的硬件來完成,所述的程序可存儲于一計算機可讀取存儲介質(zhì)中,該程序在執(zhí)行時,可包括如上述各方法的實施例的流程。其中,所述的存儲介質(zhì)可為磁碟、光盤、只讀存儲記憶體(Read-Only Memory,ROM)等非易失性存儲介質(zhì),或隨機存儲記憶體(Random Access Memory,RAM)等。

以上所述實施例的各技術(shù)特征可以進(jìn)行任意的組合,為使描述簡潔,未對上述實施例中的各個技術(shù)特征所有可能的組合都進(jìn)行描述,然而,只要這些技術(shù)特征的組合不存在矛盾,都應(yīng)當(dāng)認(rèn)為是本說明書記載的范圍。

以上所述實施例僅表達(dá)了本發(fā)明的幾種實施方式,其描述較為具體和詳細(xì),但并不能因此而理解為對發(fā)明專利范圍的限制。應(yīng)當(dāng)指出的是,對于本領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干變形和改進(jìn),這些都屬于本發(fā)明的保護(hù)范圍。因此,本發(fā)明專利的保護(hù)范圍應(yīng)以所附權(quán)利要求為準(zhǔn)。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
兴文县| 获嘉县| 宁津县| 大方县| 衡东县| 栾城县| 纳雍县| 手游| 民权县| 桃园县| 图木舒克市| 宣城市| 长顺县| 大关县| 柘荣县| 沾益县| 遂平县| 华蓥市| 尚志市| 满城县| 元氏县| 霍林郭勒市| 库尔勒市| 三都| 黄大仙区| 邢台市| 如皋市| 宜丰县| 菏泽市| 永昌县| 雷波县| 遂川县| 安西县| 亳州市| 安多县| 赫章县| 商河县| 洛扎县| 祁东县| 会昌县| 绍兴县|