导航:首页 > 数据处理 > jdbc插入多少数据

jdbc插入多少数据

发布时间:2024-04-27 16:53:50

1. java 如何批量插入数据

通过jdbc就可以执行批量插入了。
以下案例:
1、逐条执行10万次
2、分批执行将10万分成m批,每批n条,分多种分批方案来执行。
/**
* 批处理执行
*
* @param m 批次
* @param n 每批数量
* @throws Exception 异常时抛出
*/
public static void testInsertBatch(int m, int n) throws Exception {
init(); //初始化环境
Long start = System.currentTimeMillis();
for (int i = 0; i < m; i++) {
//从池中获取连接
Connection conn = myBroker.getConnection();
Statement stmt = conn.createStatement();
for (int k = 0; k < n; k++) {
String sql = "\n" +
"insert into testdb.tuser \n" +
"\t(name, \n" +
"\tremark, \n" +
"\tcreatetime, \n" +
"\tupdatetime\n" +
"\t)\n" +
"\tvalues\n" +
"\t('" + RandomToolkit.generateString(12) + "', \n" +
"\t'" + RandomToolkit.generateString(24) + "', \n" +
"\tnow(), \n" +
"\tnow()\n" +
")";
//加入批处理
stmt.addBatch(sql);
}
stmt.executeBatch(); //执行批处理
stmt.close();
myBroker.freeConnection(conn); //连接归池
}
Long end = System.currentTimeMillis();
System.out.println("批量执行" + m + "*" + n + "=" + m * n + "条Insert操作,共耗时:" + (end - start) / 1000f + "秒!");
}

2. 鐢↗DBC寰鐜鎻掑叆鏁版嵁

杩欎釜杩树笉绠鍗曚简...
浣犲垱寤哄嚭statement 钖庤皟鐢ㄦ墽琛屾柟娉..鍐欎釜宓屽楃殑3灞傚惊鐜..姣忔¢兘铡绘墽琛岃繖涓狲ql灏卞ソ浜...
缁欎綘涓浠g爜鎻愮ず镓句釜鏀规敼灏辫兘瀹炵幇..
elietian
璇寸殑涓嶅..鍦╦dbc涓闄や简鐜板湪涓涓嫔法灏忕殑鏁版嵁搴揿俬sqldb绛..涓鑸镄刟utocommit鏄痶rue镄
镓浠ユ疮娆′笉鐢╟ommit
//銮峰缑杩炴帴.鍒涘缓statement
for(long p =0;p<125;p++){
for(long g =0 ;g<5;g++){
for(long d= 0 ;d<9;d++)
{
String sql="insert into Entity values("+String.valueof(p)+","+Stirng.valueof(g)+","+String.valueof(d)+",0,100,0)";
st.e....(sql)鍟ユ柟娉旷殑铡绘墽琛;//濂戒箙涓嶅啓浜嗗缮璁..锻靛懙
}
}}
//鍏抽棴statement 鍏抽棴杩炴帴.
涓婅堪涓轰吉浠g爜...镐濇兂濡傛..绁濅綘缂栧啓寮蹇..杩欐牱钖..鏀筶ong..

3. 瀹炴垬浣挞獙鍑犵峂ySQLCluster鏂规坃MySQL


1.鑳屾櫙
MySQL镄刢luster鏂规堟湁寰埚氩畼鏂瑰拰绗涓夋柟镄勯夋嫨锛岄夋嫨澶氩氨鏄涓绉岖储鎭硷纴锲犳わ纴鎴戜滑钥冭槛MySQL鏁版嵁搴撴弧瓒充笅涓夌偣闇姹傦纴钥冨疗甯傞溃涓婂彲琛岀殑瑙e喅鏂规堬细

楂桦彲鐢ㄦэ细涓绘湇锷″櫒鏁呴㱩钖庡彲镊锷ㄥ垏鎹㈠埌钖庡囨湇锷″櫒鍙浼哥缉镐э细鍙鏂逛究阃氲繃鑴氭湰澧炲姞DB链嶅姟鍣ㄨ礋杞藉潎琛★细鏀鎸佹坠锷ㄦ妸镆愬叕鍙哥殑鏁版嵁璇锋眰鍒囨崲鍒板彟澶栫殑链嶅姟鍣锛屽彲閰岖疆鍝浜涘叕鍙哥殑鏁版嵁链嶅姟璁块梾鍝涓链嶅姟鍣
闇瑕侀夌敤涓绉嶆柟妗堟弧瓒充互涓婇渶姹伞傚湪MySQL瀹樻柟缃戠珯涓婂弬钥冧简鍑犵嶈В鍐虫柟妗堢殑浼樼己镣癸细



缁煎悎钥冭槛锛屽喅瀹氶噰鐢∕ySQL Fabric鍜孧ySQL Cluster鏂规堬纴浠ュ强鍙﹀栦竴绉嶈缉鎴愮啛镄勯泦缇ゆ柟妗圙alera Cluster杩涜岄勭爷銆

2.MySQLCluster
绠浠嬶细

MySQL Cluster 鏄疢ySQL 瀹樻柟闆嗙兢閮ㄧ讲鏂规堬纴瀹幂殑铡嗗彶杈冧箙銆傛敮鎸侀氲繃镊锷ㄥ垎鐗囨敮鎸佽诲啓镓╁𪾢锛岄氲繃瀹炴椂澶囦唤鍐椾綑鏁版嵁锛屾槸鍙鐢ㄦф渶楂樼殑鏂规堬纴澹扮О鍙锅氩埌99.999%镄勫彲鐢ㄦс

鏋舵瀯鍙婂疄鐜板师鐞嗭细



MySQL cluster涓昏佺敱涓夌岖被鍨嬬殑链嶅姟缁勬垚锛

NDB Management Server锛氱$悊链嶅姟鍣ㄤ富瑕佺敤浜庣$悊cluster涓镄勫叾浠栫被鍨嬭妭镣癸纸Data Node鍜孲QL Node锛夛纴阃氲繃瀹冨彲浠ラ厤缃甆ode淇℃伅锛屽惎锷ㄥ拰锅沧Node銆 SQL Node锛氩湪MySQL Cluster涓锛屼竴涓猄QL Node灏辨槸涓涓浣跨敤NDB寮曟搸镄刴ysql server杩涚▼锛岀敤浜庝緵澶栭儴搴旂敤鎻愪緵闆嗙兢鏁版嵁镄勮块梾鍏ュ彛銆侱ata Node锛氱敤浜庡瓨鍌ㄩ泦缇ゆ暟鎹锛涚郴缁熶细灏介噺灏嗘暟鎹鏀惧湪鍐呭瓨涓銆


缂虹偣鍙婇檺鍒讹细

瀵归渶瑕佽繘琛屽垎鐗囩殑琛ㄩ渶瑕佷慨鏀瑰紩镎嶪nnodb涓篘DB锛屼笉闇瑕佸垎鐗囩殑鍙浠ヤ笉淇鏀广侼DB镄勪簨锷¢殧绂荤骇鍒鍙鏀鎸丷ead Committed锛屽嵆涓涓浜嫔姟鍦ㄦ彁浜ゅ墠锛屾煡璇涓嶅埌鍦ㄤ簨锷″唴镓锅氱殑淇鏀癸绂钥孖nnodb鏀鎸佹墍链夌殑浜嫔姟闅旂荤骇鍒锛岄粯璁や娇鐢≧epeatable Read锛屼笉瀛桦湪杩欎釜闂棰樸傚栭敭鏀鎸侊细铏界劧链鏂扮殑Cluster鐗堟湰宸茬粡鏀鎸佸栭敭锛屼絾镐ц兘链夐梾棰桡纸锲犱负澶栭敭镓鍏宠仈镄勮板綍鍙鑳藉湪鍒镄勫垎鐗囱妭镣逛腑锛夛纴镓浠ュ缓璁铡绘帀镓链夊栭敭銆侱ata Node鑺傜偣鏁版嵁浼氲灏介噺鏀惧湪鍐呭瓨涓锛屽瑰唴瀛樿佹眰澶с
鏁版嵁搴撶郴缁熸彁渚涗简锲涚崭簨锷¢殧绂荤骇鍒锛
A.Serializable锛堜覆琛屽寲锛夛细涓涓浜嫔姟鍦ㄦ墽琛岃繃绋嬩腑瀹屽叏鐪嬩笉鍒板叾浠栦簨锷″规暟鎹搴撴墍锅氱殑镟存柊锛堜簨锷℃墽琛岀殑镞跺欎笉鍏佽稿埆镄勪簨锷″苟鍙戞墽琛屻备簨锷′覆琛屽寲镓ц岋纴浜嫔姟鍙鑳戒竴涓鎺ョ潃涓涓鍦版墽琛岋纴钥屼笉鑳藉苟鍙戞墽琛屻傦级銆
B.Repeatable Read锛埚彲閲嶅嶈伙级锛氢竴涓浜嫔姟鍦ㄦ墽琛岃繃绋嬩腑鍙浠ョ湅鍒板叾浠栦簨锷″凡缁忔彁浜ょ殑鏂版彃鍏ョ殑璁板綍锛屼絾鏄涓嶈兘鐪嫔埌鍏朵粬鍏朵粬浜嫔姟瀵瑰凡链夎板綍镄勬洿鏂般
C.Read Commited锛堣诲凡鎻愪氦鏁版嵁锛夛细涓涓浜嫔姟鍦ㄦ墽琛岃繃绋嬩腑鍙浠ョ湅鍒板叾浠栦簨锷″凡缁忔彁浜ょ殑鏂版彃鍏ョ殑璁板綍锛岃屼笖鑳界湅鍒板叾浠栦簨锷″凡缁忔彁浜ょ殑瀵瑰凡链夎板綍镄勬洿鏂般
D.Read Uncommitted锛堣绘湭鎻愪氦鏁版嵁锛夛细涓涓浜嫔姟鍦ㄦ墽琛岃繃绋嬩腑鍙浠ョ湅鍒板叾浠栦簨锷℃病链夋彁浜ょ殑鏂版彃鍏ョ殑璁板綍锛岃屼笖鑳界湅鍒板叾浠栦簨锷℃病链夋彁浜ょ殑瀵瑰凡链夎板綍镄勬洿鏂般

3.MySQL Fabric
绠浠嬶细

涓轰简瀹炵幇鍜屾柟渚跨$悊MySQL 鍒嗙墖浠ュ强瀹炵幇楂桦彲鐢ㄩ儴缃诧纴Oracle鍦2014骞5链堟帹鍑轰简涓濂椾负钖勬柟瀵勪篑铡氭湜镄凪ySQL浜у搧 -- MySQL Fabric, 鐢ㄦ潵绠$悊MySQL 链嶅姟锛屾彁渚涙墿灞曟у拰瀹规槗浣跨敤镄勭郴缁燂纴Fabric褰揿墠瀹炵幇浜嗕袱涓鐗规э细楂桦彲鐢ㄥ拰浣跨敤鏁版嵁鍒嗙墖瀹炵幇鍙镓╁𪾢镐у拰璐熻浇鍧囱锛岃繖涓や釜鐗规ц兘鍗旷嫭浣跨敤鎴栫粨钖堜娇鐢ㄣ

MySQL Fabric 浣跨敤浜嗕竴绯诲垪镄刾ython鑴氭湰瀹炵幇銆

搴旂敤妗堜緥锛氱敱浜庤ユ柟妗埚湪铡诲勾镓嶆帹鍑猴纴鐩鍓嶅湪缃戜笂𨱌傛椂娌℃悳绱㈠埌链夊ぇ鍏鍙哥殑搴旂敤妗堜緥銆

鏋舵瀯鍙婂疄鐜板师鐞嗭细

Fabric鏀鎸佸疄鐜伴珮鍙鐢ㄦх殑鏋舵瀯锲惧备笅锛

Fabric浣跨敤HA缁勫疄鐜伴珮鍙鐢ㄦэ纴鍏朵腑涓鍙版槸涓绘湇锷″櫒锛屽叾浠栨槸澶囦唤链嶅姟鍣锛 澶囦唤链嶅姟鍣ㄩ氲繃钖屾ュ嶅埗瀹炵幇鏁版嵁鍐椾綑銆傚簲鐢ㄧ▼搴忎娇鐢ㄧ壒瀹氱殑椹卞姩锛岃繛鎺ュ埌Fabric 镄凛onnector缁勪欢锛屽綋涓绘湇锷″櫒鍙戠敓鏁呴㱩钖庯纴Connector镊锷ㄥ崌绾у叾涓涓涓澶囦唤链嶅姟鍣ㄤ负涓绘湇锷″櫒锛屽簲鐢ㄧ▼搴忔棤闇淇鏀广
Fabric鏀鎸佸彲镓╁𪾢镐у强璐熻浇鍧囱镄勬灦鏋勫备笅锛





浣跨敤澶氢釜HA 缁勫疄鐜板垎鐗囷纴姣忎釜缁勪箣闂村垎𨰾呬笉钖岀殑鍒嗙墖鏁版嵁锛堢粍鍐呯殑鏁版嵁鏄鍐椾綑镄勶纴杩欎釜鍦ㄩ珮鍙鐢ㄦт腑宸茬粡鎻愬埌锛
搴旂敤绋嫔簭鍙闇钖庆onnector鍙戦乹uery鍜宨nsert绛夎鍙ワ纴Connector阃氲繃MasterGroup镊锷ㄥ垎閰嶈繖浜涙暟鎹鍒板悇涓缁勶纴鎴栦粠钖勪釜缁勪腑缁勫悎绗﹀悎𨱒′欢镄勬暟鎹锛岃繑锲炵粰搴旂敤绋嫔簭銆
缂虹偣鍙婇檺鍒讹细
褰卞搷姣旇缉澶х殑涓や釜闄愬埗鏄锛

镊澧为暱阌涓嶈兘浣滀负鍒嗙墖镄勯敭锛涗簨锷″强镆ヨ㈠彧鏀鎸佸湪钖屼竴涓鍒嗙墖鍐咃纴浜嫔姟涓镟存柊镄勬暟鎹涓嶈兘璺ㄥ垎鐗囷纴镆ヨ㈣鍙ヨ繑锲炵殑鏁版嵁涔熶笉鑳借法鍒嗙墖銆


娴嬭瘯楂桦彲鐢ㄦ

链嶅姟鍣ㄦ灦鏋勶细



锷熻兘



IP



Port





Backing store(淇濆瓨钖勬湇锷″櫒閰岖疆淇℃伅)



200.200.168.24



3306





Fabric 绠$悊杩涚▼锛圕onnector锛



200.200.168.24



32274





HA Group 1 -- Master



200.200.168.23



3306





HA Group 1 -- Slave



200.200.168.25



3306



瀹夎呰繃绋嬬渷鐣ワ纴涓嬮溃璁茶堪濡备綍璁剧疆楂桦彲鐢ㄧ粍銆佹坊锷犲囦唤链嶅姟鍣ㄧ瓑杩囩▼

棣栧厛锛屽垱寤洪珮鍙鐢ㄧ粍锛屼緥濡傜粍钖峠roup_id-1锛屽懡浠わ细

mysqlfabric group create group_id-1

寰缁勫唴group_id-1娣诲姞链哄櫒200.200.168.25鍜200.200.168.23锛

mysqlfabric group add group_id-1 200.200.168.25:3306

mysqlfabric group add group_id-1 200.200.168.23:3306

铹跺悗镆ョ湅缁勫唴链哄櫒鐘舵侊细



鐢变簬链璁剧疆涓绘湇锷″櫒锛屼袱涓链嶅姟镄勭姸镐侀兘鏄疭ECONDARY
鎻愬崌鍏朵腑涓涓涓轰富链嶅姟鍣锛
mysqlfabric group promote group_id-1 --slave_id 00f9831f-d602-11e3-b65e-0800271119cb
铹跺悗鍐嶆煡鐪嬬姸镐侊细



璁剧疆鎴愪富链嶅姟鍣ㄧ殑链嶅姟宸茬粡鍙樻垚Primary銆
鍙﹀栵纴mode灞炴ц〃绀鸿ユ湇锷″櫒鏄鍙璇诲啓锛圧EAD_WRITE)锛屾垨鍙璇(READ_ONLY)锛屽彧璇昏〃绀哄彲浠ュ垎鎽婃煡璇㈡暟鎹镄勫帇锷涳绂鍙链変富链嶅姟鍣ㄨ兘璁剧疆鎴愬彲璇诲啓锛圧EAD_WRITE)銆
杩欐椂妫镆25链嶅姟鍣ㄧ殑slave鐘舵侊细



鍙浠ョ湅鍒板畠镄勪富链嶅姟鍣ㄥ凡缁忔寚钖23
铹跺悗婵娲绘晠闅滆嚜锷ㄥ垏鎹㈠姛鑳斤细
mysqlfabric group activate group_id-1
婵娲诲悗鍗冲彲娴嬭瘯链嶅姟镄勯珮鍙浠ユ
棣栧厛锛岃繘琛岀姸镐佹祴璇曪细
锅沧涓绘湇锷″櫒23



铹跺悗镆ョ湅鐘舵侊细



鍙浠ョ湅鍒帮纴杩欐椂灏25镊锷ㄦ彁鍗囦负涓绘湇锷″櫒銆
浣嗗傛灉灏23鎭㈠嶈捣𨱒ュ悗锛岄渶瑕佹坠锷ㄩ吨鏂拌剧疆23涓轰富链嶅姟鍣ㄣ
瀹炴椂镐ф祴璇曪细
鐩镄勶细娴嬭瘯鍦ㄤ富链嶅姟镟存柊鏁版嵁钖庯纴澶囦唤链嶅姟鍣ㄥ氢箙镓嶆樉绀鸿繖浜涙暟鎹
娴嬭瘯妗堜緥锛氢娇鐢╦ava浠g爜寤鸿繛鎺ワ纴寰镆愬紶琛ㄦ彃鍏100𨱒¤板綍锛岀湅澶囦唤链嶅姟鍣ㄥ氢箙镓嶈兘钖屾ヨ繖100𨱒℃暟鎹
娴嬭瘯缁撴灉锛
琛ㄤ腑铡熸潵链101𨱒℃暟鎹锛岃繍琛岀▼搴忓悗锛屾煡鐪嬩富链嶅姟鍣ㄧ殑鏁版嵁𨱒℃暟锛



鍙瑙佷富链嶅姟鍣ㄥ綋铹剁珛鍗冲缑鍒版洿鏂般
镆ョ湅澶囦唤链嶅姟鍣ㄧ殑鏁版嵁𨱒℃暟锛



浣嗗囦唤链嶅姟鍣ㄧ瓑寰呬简1-2鍒嗛挓镓嶅悓姝ュ畬鎴愶纸鍙浠ョ湅鍒癴abric浣跨敤镄勬槸寮傛ュ嶅埗锛岃繖鏄榛樿ゆ柟寮忥纴镐ц兘杈冨ソ锛屼富链嶅姟鍣ㄤ笉鐢ㄧ瓑寰呭囦唤链嶅姟鍣ㄨ繑锲烇纴浣嗗悓姝ラ熷害杈冩参锛

瀵逛簬浠庢湇锷″櫒钖屾ユ暟鎹绋冲畾镐ч梾棰桡纴链変互涓嬭В鍐虫柟妗堬细

浣跨敤鍗婂悓姝ュ姞寮烘暟鎹涓镊存э细寮傛ュ嶅埗鑳芥彁渚涜缉濂界殑镐ц兘锛屼絾涓诲簱鍙鏄鎶奲inlog镞ュ织鍙戦佺粰浠庡簱锛屽姩浣滃氨缁撴潫浜嗭纴涓崭细楠岃瘉浠庡簱鏄钖︽帴鏀跺畬姣曪纴椋庨橹杈冮珮銆傚崐钖屾ュ嶅埗浼氩湪鍙戦佺粰浠庡簱钖庯纴绛夊緟浠庡簱鍙戦佺‘璁や俊鎭钖庢墠杩斿洖銆傚彲浠ヨ剧疆浠庡簱涓钖屾ユ棩蹇楃殑镟存柊鏂瑰纺锛屼粠钥屽噺灏戜粠搴揿悓姝ョ殑寤惰繜锛屽姞蹇钖屾ラ熷害銆 瀹夎呭崐钖屾ュ嶅埗锛
鍦╩ysql涓杩愯
install plugin rpl_semi_sync_master soname 'semisync_master.so';
install plugin rpl_semi_sync_slave soname 'semisync_slave.so';
SET GLOBAL rpl_semi_sync_master_enabled=ON;
SET GLOBAL rpl_semi_sync_slave_enabled=ON;
淇鏀筸y.cnf 锛
rpl_semi_sync_master_enabled=1
rpl_semi_sync_slave_enabled=1
sync_relay_log=1
sync_relay_log_info=1
sync_master_info=1
绋冲畾镐ф祴璇曪细
娴嬭瘯妗堜緥锛氢娇鐢╦ava浠g爜寤鸿繛鎺ワ纴寰镆愬紶琛ㄦ彃鍏1w𨱒¤板綍锛屾彃鍏ヨ繃绋嬩腑灏嗗叾涓镄刴aster链嶅姟鍣ㄥ仠浜嗭纴鐪嫔囦唤链嶅姟鍣ㄦ槸钖︽湁杩1w绗旇板綍
娴嬭瘯缁撴灉锛屽仠姝涓绘湇锷″櫒钖庯纴java绋嫔簭鎶涘嚭寮傚父锛


浣呜繖镞跺啀娆″彂阃乻ql锻戒护锛屽彲浠ユ垚锷熻繑锲炪傝瘉鏄庡彧鏄褰撴椂镄勪簨锷″け璐ヤ简銆傝繛鎺ュ垏鎹㈠埌浜嗗囦唤链嶅姟鍣锛屼粛铹跺彲鐢ㄣ
缈婚槄浜唌ysql鏂囨。锛屾湁绔犺妭璇存槑浜呜繖涓闂棰桡细



閲岄溃鎻愬埌锛氩綋涓绘湇锷″櫒褰撴満镞讹纴鎴戜滑镄勫簲鐢ㄧ▼搴忚槠铹舵槸涓嶉渶锅氢换浣曚慨鏀圭殑锛屼絾鍦ㄤ富链嶅姟鍣ㄨ澶囦唤链嶅姟鍣ㄦ浛鎹㈠墠锛屾煇浜涗簨锷′细涓㈠け锛岃繖浜涘彲浠ヤ綔涓烘e父镄刴ysql阌栾𨱒ュ勭悊銆
鏁版嵁瀹屾暣镐ф牎楠岋细
娴嬭瘯涓绘湇锷″櫒锅沧㈠悗锛屽囦唤链嶅姟鍣ㄦ槸钖﹁兘澶熷悓姝ユ墍链夋暟鎹銆
閲嶅惎浜嗗垰镓嶅仠姝涓绘湇锷″櫒钖庯纴镆ョ湅璁板綍鏁



鍙浠ョ湅鍒板湪鎻掑叆1059𨱒¤板綍钖庤锅沧浜嗐

鐜板湪鐪嬬湅澶囦唤链嶅姟鍣ㄧ殑璁板綍鏁版槸澶氩皯锛岀湅鐪嫔湪涓绘湇锷″櫒褰撴満钖庢槸钖︽墍链夋暟鎹閮借兘钖屾ヨ繃𨱒



澶х害缁忚繃浜嗗嚑鍗佺掞纴镓嶅悓姝ュ畬锛屾暟鎹铏界劧涓嶆槸绔嫔嵆钖屾ヨ繃𨱒ワ纴浣嗘病链変涪澶便

1.2銆佸垎鐗囷细濡备綍鏀鎸佸彲镓╁𪾢镐у拰璐熻浇鍧囱

fabric鍒嗙墖绠浠嬶细褰扑竴鍙版満鍣ㄦ垨涓涓缁勬圹鍙椾笉浜嗘湇锷″帇锷涘悗锛屽彲浠ユ坊锷犳湇锷″櫒鍒嗘憡璇诲啓铡嫔姏锛岄氲繃Fabirc镄勫垎鐗囧姛鑳藉彲浠ュ皢镆愪簺琛ㄤ腑鏁版嵁鍒嗘暎瀛桦偍鍒颁笉钖屾湇锷″櫒銆傛垜浠鍙浠ヨ惧畾鍒嗛厤鏁版嵁瀛桦偍镄勮勫垯锛岄氲繃鍦ㄨ〃涓璁剧疆鍒嗙墖key璁剧疆鍒嗛厤镄勮勫垯銆傚彟澶栵纴链変簺琛ㄧ殑鏁版嵁鍙鑳藉苟涓嶉渶瑕佸垎鐗囧瓨鍌锛岄渶瑕佸皢鏁村紶琛ㄥ瓨鍌ㄥ湪钖屼竴涓链嶅姟鍣ㄤ腑锛屽彲浠ュ皢璁剧疆涓涓鍏ㄥ眬缁勶纸Global Group锛夌敤浜庡瓨鍌ㄨ繖浜涙暟鎹锛屽瓨鍌ㄥ埌鍏ㄥ眬缁勭殑鏁版嵁浼氲嚜锷ㄦ嫹璐濆埌鍏朵粬镓链夌殑鍒嗙墖缁勪腑銆



4.Galera Cluster
绠浠嬶细

Galera Cluster鍙风О鏄涓栫晫涓婃渶鍏堣繘镄勫紑婧愭暟鎹搴挞泦缇ゆ柟妗



涓昏佷紭镣瑰强鐗规э细

鐪熸g殑澶氢富链嶅姟妯″纺锛氩氢釜链嶅姟鑳藉悓镞惰璇诲啓锛屼笉镀廎abric闾f牱镆愪簺链嶅姟鍙鑳戒綔澶囦唤鐢ㄥ悓姝ュ嶅埗锛氭棤寤惰繜澶嶅埗锛屼笉浼氢骇鐢熸暟鎹涓㈠け鐑澶囩敤锛氩綋镆愬彴链嶅姟鍣ㄥ綋链哄悗锛屽囩敤链嶅姟鍣ㄤ细镊锷ㄦ帴绠★纴涓崭细浜х敓浠讳綍褰撴満镞堕棿镊锷ㄦ墿灞曡妭镣癸细鏂板炴湇锷″櫒镞讹纴涓嶉渶镓嫔伐澶嶅埗鏁版嵁搴揿埌鏂扮殑鑺傜偣鏀鎸両nnoDB寮曟搸瀵瑰簲鐢ㄧ▼搴忛忔槑锛氩簲鐢ㄧ▼搴忎笉闇浣滀慨鏀


鏋舵瀯鍙婂疄鐜板师鐞嗭细
棣栧厛锛屾垜浠鐪嬬湅浼犵粺镄勫熀浜巑ysql Replication锛埚嶅埗锛夌殑鏋舵瀯锲撅细



Replication鏂瑰纺鏄阃氲繃钖锷ㄥ嶅埗绾跨▼浠庝富链嶅姟鍣ㄤ笂𨰾疯礉镟存柊镞ュ织锛岃╁悗浼犻佸埌澶囦唤链嶅姟鍣ㄤ笂镓ц岋纴杩欑嶆柟寮忓瓨鍦ㄤ簨锷′涪澶卞强钖屾ヤ笉鍙婃椂镄勯庨橹銆侳abric浠ュ强浼犵粺镄勪富浠庡嶅埗閮芥槸浣跨敤杩欑嶅疄鐜版柟寮忋

钥孏alera鍒欓噰鐢ㄤ互涓嬫灦鏋勪缭璇佷簨锷″湪镓链夋満鍣ㄧ殑涓镊存э细



瀹㈡埛绔阃氲繃Galera Load Balancer璁块梾鏁版嵁搴掳纴鎻愪氦镄勬疮涓浜嫔姟閮戒细阃氲繃wsrep API 鍦ㄦ墍链夋湇锷″櫒涓镓ц岋纴瑕佷笉镓链夋湇锷″櫒閮芥墽琛屾垚锷燂纴瑕佷笉灏辨墍链夐兘锲炴粴锛屼缭璇佹墍链夋湇锷$殑鏁版嵁涓镊存э纴钥屼笖镓链夋湇锷″櫒钖屾ュ疄镞舵洿鏂般
缂虹偣鍙婇檺鍒讹细

鐢变簬钖屼竴涓浜嫔姟闇瑕佸湪闆嗙兢镄勫氩彴链哄櫒涓婃墽琛岋纴锲犳ょ绣缁滀紶杈揿强骞跺彂镓ц屼细瀵艰嚧镐ц兘涓婃湁涓瀹氱殑娑堣椼傛墍链夋満鍣ㄤ笂閮藉瓨鍌ㄧ潃鐩稿悓镄勬暟鎹锛屽叏鍐椾綑銆傝嫢涓鍙版満鍣ㄦ棦浣滀负涓绘湇锷″櫒锛屽张浣滀负澶囦唤链嶅姟鍣锛屽嚭鐜颁箰瑙傞挛瀵艰嚧rollback镄勬傜巼浼氩炲ぇ锛岀紪鍐欑▼搴忔椂瑕佸皬蹇冦备笉鏀鎸佺殑SQL锛歀OCK / UNLOCK TABLES / GET_LOCK(), RELEASE_LOCK()…涓嶆敮鎸乆A Transaction
鐩鍓嶅熀浜嶨alera Cluster镄勫疄鐜版柟妗堟湁涓夌嶏细Galera Cluster for MySQL銆丳ercona XtraDB Cluster銆丮ariaDB Galera Cluster銆
鎴戜滑閲囩敤杈冩垚镡熴佸簲鐢ㄦ堜緥杈冨氱殑Percona XtraDB Cluster銆
搴旂敤妗堜緥锛
瓒呰繃2000澶氩跺栧浗浼佷笟浣跨敤锛


鍖呮嫭锛

闆嗙兢閮ㄧ讲鏋舵瀯锛



锷熻兘



IP



Port





Backing store(淇濆瓨钖勬湇锷″櫒閰岖疆淇℃伅)



200.200.168.24



3306





Fabric 绠$悊杩涚▼锛圕onnector锛



200.200.168.24



32274





HA Master 1



200.200.168.24



3306





HA Master 2



200.200.168.25



3306





HA Master 3



200.200.168.23



3306



4.1銆佹祴璇曟暟鎹钖屾

鍦ㄦ満鍣24涓婂垱寤轰竴涓琛锛



绔嫔嵆鍦25 涓镆ョ湅锛屽彲瑙佸凡琚钖屾ュ垱寤



浣跨敤Java浠g爜鍦24链嶅姟鍣ㄤ笂鎻掑叆100𨱒¤板綍



绔嫔嵆鍦25链嶅姟鍣ㄤ笂镆ョ湅璁板綍鏁



鍙瑙佹暟鎹钖屾ユ槸绔嫔嵆鐢熸晥镄勚
4.2銆佹祴璇曟坊锷犻泦缇よ妭镣
娣诲姞涓涓闆嗙兢鑺傜偣镄勬ラゅ緢绠鍗曪纴鍙瑕佸湪鏂板姞鍏ョ殑链哄櫒涓婇儴缃插ソPercona XtraDB Cluster锛岀劧钖庡惎锷锛岀郴缁熷皢镊锷ㄥ皢鐜板瓨闆嗙兢涓镄勬暟鎹钖屾ュ埌鏂扮殑链哄櫒涓娿
鐜板湪涓轰简娴嬭瘯锛屽厛灏嗗叾涓涓涓鑺傜偣链嶅姟锅沧锛



铹跺悗浣跨敤java浠g爜鍦ㄩ泦缇や笂鎻掑叆100W鏁版嵁



镆ョ湅100w鏁版嵁镄勬暟鎹搴揿ぇ灏忥细



杩欐椂钖锷ㄥ彟澶栦竴涓鑺傜偣锛屽惎锷ㄦ椂鍗充细镊锷ㄥ悓姝ラ泦缇ょ殑鏁版嵁锛



钖锷ㄥ彧闇20绉掑乏鍙筹纴镆ョ湅鏁版嵁澶у皬涓镊达纴镆ョ湅琛ㄨ板綍鏁帮纴涔熷凡缁忓悓姝ヨ繃𨱒



5.瀵规瘆镐荤粨





MySQL Fabric



Galera Cluster





浣跨敤妗堜緥



2014骞5链堟墠鎺ㄥ嚭锛岀洰鍓嶅湪缃戜笂𨱌傛椂娌℃悳绱㈠埌链夊ぇ鍏鍙哥殑搴旂敤妗堜緥



鏂规堣缉鎴愮啛锛屽栧浗澶氩朵簰镵旂绣鍏鍙镐娇鐢





鏁版嵁澶囦唤镄勫疄镞舵



鐢变簬浣跨敤寮傛ュ嶅埗锛屼竴鑸寤舵椂鍑犲崄绉掞纴浣嗘暟鎹涓崭细涓㈠け銆



瀹炴椂钖屾ワ纴鏁版嵁涓崭细涓㈠け





鏁版嵁鍐椾綑



浣跨敤鍒嗙墖锛岄氲繃璁剧疆鍒嗙墖key瑙勫垯鍙浠ュ皢钖屼竴寮犺〃镄勪笉钖屾暟鎹鍒嗘暎鍦ㄥ氩彴链哄櫒涓



姣忎釜鑺傜偣鍏ㄥ啑浣欙纴娌℃湁鍒嗙墖





楂桦彲鐢ㄦ



阃氲繃Fabric Connector瀹炵幇涓绘湇锷″櫒褰撴満钖庣殑镊锷ㄥ垏鎹锛屼絾鐢变簬澶囦唤寤惰繜锛屽垏鎹㈠悗鍙鑳戒笉鑳界珛鍗虫煡璇㈡暟鎹



浣跨敤HAProxy瀹炵幇銆傜敱浜庡疄镞跺悓姝ワ纴鍒囨崲镄勫彲鐢ㄦф洿楂樸





鍙浼哥缉镐



娣诲姞鑺傜偣钖庯纴闇瑕佸厛镓嫔伐澶嶅埗闆嗙兢鏁版嵁



镓╁𪾢鑺傜偣鍗佸垎鏂逛究锛屽惎锷ㄨ妭镣规椂镊锷ㄥ悓姝ラ泦缇ゆ暟鎹锛100w鏁版嵁锛100M锛夊彧闇20绉掑乏鍙





璐熻浇鍧囱



阃氲繃HASharding瀹炵幇



浣跨敤HAProxy瀹炵幇璐熻浇鍧囱





绋嫔簭淇鏀



闇瑕佸垏鎹㈡垚jdbc:mysql:fabric镄刯dbc绫诲拰url



绋嫔簭镞犻渶淇鏀





镐ц兘瀵规瘆



浣跨敤java鐩存帴鐢╦dbc鎻掑叆100𨱒¤板綍锛屽ぇ姒2000+ms



璺熺洿鎺ユ搷浣渕ysql涓镙凤纴鐩存帴鐢╦dbc鎻掑叆100𨱒¤板綍锛屽ぇ姒600ms



6.瀹炶返搴旂敤
缁煎悎钥冭槛涓婇溃鏂规堢殑浼樼己镣癸纴鎴戜滑姣旇缉锅忓悜阃夋嫨Galera 濡傛灉鍙链変袱鍙版暟鎹搴撴湇锷″櫒锛岃冭槛閲囩敤浠ヤ笅鏁版嵁搴撴灦鏋勫疄鐜伴珮鍙鐢ㄦс佽礋杞藉潎琛″拰锷ㄦ佹墿灞曪细



濡傛灉涓夊彴链哄櫒鍙浠ヨ冭槛锛



阅读全文

与jdbc插入多少数据相关的资料

热点内容
唐山丰南哪里有事业单位招聘信息 浏览:913
贸易数据查询网站有哪些 浏览:218
安徽无人农场规划市场前景如何 浏览:600
琅菱新能源设备产品怎么样 浏览:1000
应用程序如何查看文件名 浏览:461
维他奶集团包括哪些产品 浏览:558
全南赣州人才网市场前景如何 浏览:830
报税代理公司有哪些 浏览:893
代理保险业务属于哪些 浏览:893
ddos是什么技术 浏览:702
通信技术师怎么样 浏览:364
日本万代代理分销怎么做 浏览:555
咕咚运动如何只看今日运动数据 浏览:189
eccc怎么交易 浏览:563
昆明二手房买来多久能交易 浏览:947
哪个古玩市场在跨海大桥附近 浏览:834
如何加盟微盟代理 浏览:301
java程序中什么时候用int 浏览:631
一个程序怎么样才能并发控制 浏览:17
手剥笋属于什么产品 浏览:84