新聞中心
MySQL是世界上更流行的開(kāi)源關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)之一,得益于其開(kāi)源、免費(fèi)、高性能、易用等優(yōu)勢(shì),被廣泛應(yīng)用于各種互聯(lián)網(wǎng)應(yīng)用、數(shù)據(jù)挖掘與分析、金融、物流等領(lǐng)域。而MySQL數(shù)據(jù)庫(kù)一主兩從架構(gòu)則是常見(jiàn)的高可用性和容災(zāi)架構(gòu)之一,本文將深入剖析這種架構(gòu)的優(yōu)勢(shì)和應(yīng)用。

讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來(lái)自于我們對(duì)這個(gè)行業(yè)的熱愛(ài)。我們立志把好的技術(shù)通過(guò)有效、簡(jiǎn)單的方式提供給客戶,將通過(guò)不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長(zhǎng)期合作伙伴,公司提供的服務(wù)項(xiàng)目有:申請(qǐng)域名、虛擬主機(jī)、營(yíng)銷軟件、網(wǎng)站建設(shè)、晉源網(wǎng)站維護(hù)、網(wǎng)站推廣。
一、一主兩從架構(gòu)的原理和特點(diǎn)
MySQL一主兩從架構(gòu)是指將一個(gè)Mysql主服務(wù)器和兩個(gè)從服務(wù)器組成的集群架構(gòu),主服務(wù)器負(fù)責(zé)寫操作和讀操作的負(fù)載均衡,從服務(wù)器負(fù)責(zé)讀操作和備份,一般情況下讀寫比例為3:1。主服務(wù)器和從服務(wù)器的數(shù)據(jù)同步采用MySQL的同步復(fù)制機(jī)制,當(dāng)主服務(wù)器出現(xiàn)故障時(shí),從服務(wù)器可以接管主服務(wù)器的工作,實(shí)現(xiàn)高可用性和容災(zāi)。
一主兩從架構(gòu)的主要特點(diǎn)如下:
1、高可用性:一主兩從架構(gòu)可以使得數(shù)據(jù)庫(kù)實(shí)現(xiàn)高可用性,當(dāng)主服務(wù)器故障時(shí),從服務(wù)器可以自動(dòng)接管,避免停機(jī)時(shí)間和數(shù)據(jù)丟失。
2、提高讀寫性能:主服務(wù)器負(fù)責(zé)寫服務(wù)和讀寫負(fù)載均衡,從服務(wù)器協(xié)助讀操作,有效提高讀寫性能。
3、備份和恢復(fù)方便:從服務(wù)器可以作為備份服務(wù)器,定期備份主服務(wù)器數(shù)據(jù),當(dāng)主服務(wù)器故障時(shí),可以快速恢復(fù)數(shù)據(jù)。
二、一主兩從架構(gòu)的優(yōu)缺點(diǎn)
一主兩從架構(gòu)有如下優(yōu)點(diǎn):
1、提高性能和負(fù)載均衡,主服務(wù)器負(fù)責(zé)寫操作和讀寫負(fù)載均衡,從服務(wù)器作為讀服務(wù)器分擔(dān)讀操作的負(fù)載,提高整個(gè)集群的讀寫能力。
2、高可用性和容災(zāi)性,當(dāng)主服務(wù)器出現(xiàn)故障時(shí),從服務(wù)器可以接管主服務(wù)器的工作,確保整個(gè)數(shù)據(jù)庫(kù)集群不會(huì)宕機(jī)。
3、備份和恢復(fù)方便,從服務(wù)器可以作為備份服務(wù)器,存儲(chǔ)主服務(wù)器的備份數(shù)據(jù),當(dāng)主服務(wù)器出現(xiàn)故障時(shí),可以快速恢復(fù)數(shù)據(jù)。
但是,一主兩從架構(gòu)也存在一些缺點(diǎn):
1、需要額外的服務(wù)器和成本支出,搭建一主兩從架構(gòu)需要購(gòu)買額外的服務(wù)器,增加了成本支出。
2、同步延遲和數(shù)據(jù)不一致問(wèn)題,當(dāng)主服務(wù)器發(fā)生寫操作時(shí),從服務(wù)器要進(jìn)行同步復(fù)制,可能會(huì)出現(xiàn)同步延遲和數(shù)據(jù)不一致的問(wèn)題。
三、一主兩從架構(gòu)的應(yīng)用
一主兩從架構(gòu)廣泛應(yīng)用于互聯(lián)網(wǎng)應(yīng)用、金融、電商、物流等領(lǐng)域,下面是具體應(yīng)用場(chǎng)景:
1、互聯(lián)網(wǎng)應(yīng)用:互聯(lián)網(wǎng)應(yīng)用通常需要大量的讀操作,如高并發(fā)的網(wǎng)站,需要快速響應(yīng)讀取請(qǐng)求,使用一主兩從架構(gòu)可以分擔(dān)讀操作的負(fù)載,提高讀寫性能。
2、金融和電商應(yīng)用:金融和電商應(yīng)用通常需要高可用性和容災(zāi)性,一主兩從架構(gòu)可以確保整個(gè)系統(tǒng)不宕機(jī),避免停機(jī)時(shí)間和數(shù)據(jù)丟失。
3、物流管理:物流管理需要快速處理大量的讀操作,使用一主兩從架構(gòu)可以提高數(shù)據(jù)庫(kù)的讀寫性能,快速響應(yīng)讀取請(qǐng)求。
四、
MySQL數(shù)據(jù)庫(kù)一主兩從架構(gòu)是一種常見(jiàn)的高可用性和容災(zāi)架構(gòu),它可以帶來(lái)一系列的優(yōu)點(diǎn),如增強(qiáng)讀寫性能、提高系統(tǒng)可用性和容災(zāi)性、備份和恢復(fù)方便等,但同時(shí)也存在一些缺點(diǎn),如額外的服務(wù)器成本和同步延遲數(shù)據(jù)不一致問(wèn)題。一主兩從架構(gòu)具體應(yīng)用于互聯(lián)網(wǎng)應(yīng)用、金融、電商和物流等領(lǐng)域,根據(jù)具體業(yè)務(wù)需求和性能要求選擇恰當(dāng)?shù)募軜?gòu)方案具有重要的意義。
成都網(wǎng)站建設(shè)公司-創(chuàng)新互聯(lián),建站經(jīng)驗(yàn)豐富以策略為先導(dǎo)10多年以來(lái)專注數(shù)字化網(wǎng)站建設(shè),提供企業(yè)網(wǎng)站建設(shè),高端網(wǎng)站設(shè)計(jì),響應(yīng)式網(wǎng)站制作,設(shè)計(jì)師量身打造品牌風(fēng)格,熱線:028-86922220MYSQL數(shù)據(jù)庫(kù)的物理設(shè)計(jì)都包括哪些內(nèi)容,怎么設(shè)計(jì)?
你想設(shè)計(jì)什么樣的數(shù)據(jù)庫(kù)啊?..可以簡(jiǎn)單的說(shuō)明一下嗎?..
設(shè)計(jì)數(shù)據(jù)庫(kù)步驟:概念模型,邏輯模型,物理模型.
概念模型:用戶需求和運(yùn)行需求的一個(gè)高級(jí)表示銷茄.
邏輯模型:用于捕捉結(jié)構(gòu)化數(shù)據(jù)的軟件模型的詳細(xì)表示.
物理模型:數(shù)據(jù)庫(kù)的所有表和列的詳細(xì)規(guī)范.
一,在概念上設(shè)計(jì)一個(gè)數(shù)據(jù)庫(kù)(概念模型)
需求:實(shí)體,屬性,關(guān)系.
軟件:Microsoft Office Visio for Enterprise Anchitects
步驟:啟用軟件,創(chuàng)建實(shí)體,添加屬性,添加關(guān)系
二,在邏輯上設(shè)計(jì)一個(gè)數(shù)據(jù)庫(kù)來(lái)利用關(guān)系引擎
需求:表,列,外鍵.
軟件:同上
在概念模型的基礎(chǔ)上創(chuàng)建.
三,物理創(chuàng)建數(shù)據(jù)庫(kù).
1,打開(kāi)SQL Server Management Studio
2,右擊數(shù)據(jù)庫(kù)-新建數(shù)據(jù)庫(kù).
架構(gòu):數(shù)據(jù)庫(kù)-安全性(右擊)-新建-架構(gòu)
架構(gòu)是用于簡(jiǎn)化數(shù)據(jù)庫(kù)對(duì)象管理的一種命名空間.
創(chuàng)建表來(lái)實(shí)現(xiàn):數(shù)據(jù)庫(kù)-(右擊)表-新建表;
設(shè)置主鍵:右擊想要設(shè)置成主鍵的項(xiàng)-設(shè)置主鍵
CHECK約束:右擊想要約束的項(xiàng)-CHECK約束-添加-表達(dá)式
數(shù)值屬性:
1,整數(shù)和數(shù)量:
bit(0_1) tiyint(0_255) allint(-32768_32767) int(_) bigint(…)
2,精確數(shù)據(jù):
decimal(精度9,小數(shù)位數(shù)0-5) numeric(19,0-9) dec(28//0-17) money(18,4) allmoney(9,4)
3,科學(xué)與工程數(shù)據(jù):
float(存儲(chǔ)空間4/8,小數(shù)位數(shù)1-24/25-53) real(4,24) double(8,53)
4,字符串悄碧屬性:
長(zhǎng)度固定:char nchar
長(zhǎng)度可變:varchar nvarchar
5,日期與時(shí)間屬性:
datetime和alldatetime
2023提供的約束:
NO NTULL:必需填的屬性.
CREATE TABLE EM(
EMNumber INT NOT NULL
)
DEFAULT:插入一行的時(shí)候,如果沒(méi)有為一個(gè)列指定虧運(yùn)察值,就會(huì)自動(dòng)使用DEFAULT值.
PRIMARY KEY:定義主鍵.
CREATE TABLE EM(
EMNumber INT NOT NULL
PRIMARY KEY(EMNumber,..)
)
UNIQUE:約束一個(gè)值,使它不在表中重復(fù).
CREATE TABLE EM(
EMNumber INT NOT NULL
UNIQUE(EMNumber,..)
)
CHECK:限制列的取值范圍和模式.
CREATE TABLE EM(
EMNumber INT NOT NULL
CHECK(EMNumber>0)
)
FOREIGN KEY:將一個(gè)列表中的值限制為可以在另一個(gè)列表中發(fā)現(xiàn)的值.
CREATE TABLE EM(
EMNumber INT NOT NULL
FOREING KEY(EMNumber,..)
)
注:使用時(shí)更好都使用代碼來(lái)操作,并少用中文.
如果是MySQL里面設(shè)計(jì)的話..很簡(jiǎn)單..一句話..
create datebase ;
創(chuàng)建表:
create table (
);
如:
//創(chuàng)建數(shù)據(jù)庫(kù)
create datebase school;
//創(chuàng)建表
create table student(
no int primary key,
name varchar(10) not null
);
至于表屬性的類型,你可以在網(wǎng)上找API文檔..
Log File物理結(jié)構(gòu)
從 ib_logfile0和 ib_logfile1這兩個(gè)文件的物理結(jié)構(gòu)可以看出,在Log Header部分還是有些許差異的, ib_logfile0會(huì)多一耐并些額外的信息,主要是checkpoint信息。
并且每個(gè)Block的單位是512字節(jié),對(duì)應(yīng)到磁盤每個(gè)扇區(qū)也是512字節(jié),因此redo log寫磁盤是原子寫,保證能夠?qū)懗晒Γ幌駃ndex page一樣需要double write來(lái)保證安全寫入。
我們依次從上到下來(lái)看每個(gè)Block的結(jié)構(gòu)
Log File Header Block
Log Goup ID,可能會(huì)配置多個(gè)redo組,每個(gè)組對(duì)應(yīng)一個(gè)id,當(dāng)前都是0,占用4字節(jié)
Start LSN,這個(gè)redo log文件開(kāi)始日志的lsn,占用8字節(jié)
Log File Number,總是為0,占用4字節(jié)
Created By,備份程序所占用的字節(jié)數(shù),占用32字節(jié)
另外在ib_logfile0中會(huì)有兩個(gè)checkpoint block,分別是 LOG_CHECKPOINT_1/ LOG_CHECKPOINT_2,兩個(gè)記錄InnoDB Checkpoint信息的字段,分別從文件頭的第二個(gè)和第四個(gè)block開(kāi)始記錄,并且只在每組log的之一個(gè)文件中存在,組內(nèi)其他文件雖然沒(méi)有checkpoint相關(guān)信息,但是也會(huì)預(yù)留相應(yīng)的空間出來(lái)。這里為什么有兩個(gè)checkpoint的呢?原因是設(shè)計(jì)為交替寫入,避免因?yàn)榻橘|(zhì)失敗而導(dǎo)致無(wú)法找到可用的checkpoint的情況。
Log blocks
請(qǐng)點(diǎn)擊輸入圖片描述
log block結(jié)構(gòu)分為日志頭段、日志記錄、日志尾部
Block Header,占用12字節(jié)
Data部分
Block tailer,占用4字節(jié)
Block Header
這個(gè)部分是每個(gè)Block的頭部,主要記錄的塊的信息
Block Number,表示這是第幾個(gè)block,占用4字節(jié),是通過(guò)LSN計(jì)算得來(lái)的,占用4字節(jié)
Block data len,表示該block中有多少昌改跡字節(jié)已經(jīng)被使用殲備了,占用2字節(jié)
First Rec offet,表示該block中作為之一個(gè)新的mtr開(kāi)始的偏移量,占用2字節(jié)
關(guān)于mysql數(shù)據(jù)庫(kù)一主兩重架構(gòu)的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。
創(chuàng)新互聯(lián)【028-86922220】值得信賴的成都網(wǎng)站建設(shè)公司。多年持續(xù)為眾多企業(yè)提供成都網(wǎng)站建設(shè),成都品牌建站設(shè)計(jì),成都高端網(wǎng)站制作開(kāi)發(fā),SEO優(yōu)化排名推廣服務(wù),全網(wǎng)營(yíng)銷讓企業(yè)網(wǎng)站產(chǎn)生價(jià)值。
網(wǎng)頁(yè)標(biāo)題:深入剖析MySQL數(shù)據(jù)庫(kù)一主兩重架構(gòu)的優(yōu)勢(shì)與應(yīng)用(mysql數(shù)據(jù)庫(kù)一主兩重架構(gòu))
分享路徑:http://fisionsoft.com.cn/article/ccdjsis.html


咨詢
建站咨詢
