日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
MySQL修改表結(jié)構(gòu)時(shí)的拷貝問題

MySQL修改表結(jié)構(gòu)時(shí)難免會(huì)出現(xiàn)問題,而MySQL修改表結(jié)構(gòu)時(shí)拷貝的時(shí)間嚴(yán)重影響了MySQL修改表結(jié)構(gòu)的操作,下面就對(duì)該問題進(jìn)行分析。

10多年的南川網(wǎng)站建設(shè)經(jīng)驗(yàn),針對(duì)設(shè)計(jì)、前端、開發(fā)、售后、文案、推廣等六對(duì)一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。成都營(yíng)銷網(wǎng)站建設(shè)的優(yōu)勢(shì)是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整南川建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無(wú)論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。創(chuàng)新互聯(lián)建站從事“南川網(wǎng)站設(shè)計(jì)”,“南川網(wǎng)站推廣”以來(lái),每個(gè)客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。

mysql數(shù)據(jù)庫(kù)里,對(duì)一個(gè)已創(chuàng)建的表進(jìn)行DDL操作,比如說添加一個(gè)字段。在做測(cè)試時(shí),發(fā)現(xiàn)ddl操作的時(shí)間特別的長(zhǎng)。oracle里,通常情況下只是修改數(shù)據(jù)字典就可以了,操作時(shí)間非常的短,阻塞DML的時(shí)間也比較短。mysql數(shù)據(jù)庫(kù)對(duì)表進(jìn)行ddl操作跟oracle數(shù)據(jù)庫(kù)有很大的不同,它先要把原表拷貝一份到臨時(shí)表,這期間不阻塞select,阻塞所有的更改操作(update,delete,insert),對(duì)臨時(shí)表ddl操作完成,刪除原表,重命名臨時(shí)表。
如果一張比較大的表進(jìn)行ddl變更,比如說40G,那拷貝的時(shí)間讓人無(wú)法忍受,并且阻塞所有的DML操作,讓業(yè)務(wù)無(wú)法繼續(xù)。

以下是測(cè)試過程:

 
 
 
  1. [coolcode]  
  2. mysql> desc t1;  
  3. +————–+————-+——+—–+———+——-+  
  4. | Field | Type | Null | Key | Default | Extra |  
  5. +————–+————-+——+—–+———+——-+  
  6. | id | int(11) | YES | MUL | NULL | |  
  7. | nick | varchar(32) | YES | | NULL | |  
  8. | email | varchar(32) | YES | | NULL | |  
  9. | gmt_create | datetime | YES | | NULL | |  
  10. | gmt_modified | datetime | YES | | NULL | |  
  11. +————–+————-+——+—–+———+——-+  
  12. mysql> select count(*) from t1;  
  13. +———-+  
  14. | count(*) |  
  15. +———-+  
  16. | 2228017 |  
  17. +———-+  
  18. 1 row in set (1.78 sec)  
  19. [/coolcode]  
  20. 現(xiàn)在對(duì)它進(jìn)行表結(jié)構(gòu)變更,增加一列:  
  21. [coolcode]  
  22. mysql> alter table t1 add(tel varchar(20));  
  23. Query OK, 2304923 rows affected (41.03 sec)  
  24. Records: 2304923 Duplicates: 0 Warnings: 0  
  25. [/coolcode]  
  26. 在上述表結(jié)構(gòu)變更過程中,啟動(dòng)另外一個(gè)會(huì)話,進(jìn)行select查詢操作和一個(gè)更新操作:  
  27. [coolcode]  
  28. mysql> select count(*) from t1;  
  29. +———-+  
  30. | count(*) |  
  31. +———-+  
  32. | 2304923 |  
  33. +———-+  
  34. 1 row in set (2.10 sec)  
  35.  
  36. mysql> select * from t1 limit 10;  
  37. +——+——-+——————+———————+———————+  
  38. | id | nick | email | gmt_create | gmt_modified |  
  39. +——+——-+——————+———————+———————+  
  40. | 0 | nick0 | nick0@taobao.com | 2008-03-14 00:00:00 | 2008-03-14 00:00:00 |  
  41. | 1 | nick1 | nick1@taobao.com | 2008-03-14 00:00:00 | 2008-03-14 00:00:00 |  
  42. | 2 | nick2 | nick2@taobao.com | 2008-03-14 00:00:00 | 2008-03-14 00:00:00 |  
  43. | 3 | nick3 | nick3@taobao.com | 2008-03-14 00:00:00 | 2008-03-14 00:00:00 |  
  44. | 4 | nick4 | nick4@taobao.com | 2008-03-14 00:00:00 | 2008-03-14 00:00:00 |  
  45. | 5 | nick5 | nick5@taobao.com | 2008-03-14 00:00:00 | 2008-03-14 00:00:00 |  
  46. | 6 | nick6 | nick6@taobao.com | 2008-03-14 00:00:00 | 2008-03-14 00:00:00 |  
  47. | 7 | nick7 | nick7@taobao.com | 2008-03-14 00:00:00 | 2008-03-14 00:00:00 |  
  48. | 8 | nick8 | nick8@taobao.com | 2008-03-14 00:00:00 | 2008-03-14 00:00:00 |  
  49. | 9 | nick9 | nick9@taobao.com | 2008-03-14 00:00:00 | 2008-03-14 00:00:00 |  
  50. +——+——-+——————+———————+———————+  
  51. 10 rows in set (0.00 sec)  
  52.  
  53. mysql> update t1 set nick=’test_nick’ where id=1;  
  54. Query OK, 4 rows affected (43.89 sec) –這里是阻塞的時(shí)間  
  55. Rows matched: 4 Changed: 4 Warnings: 0  
  56. [/coolcode]  
  57.  

通過以上實(shí)驗(yàn)可以看出,對(duì)表進(jìn)行ddl操作時(shí),mysql并不阻塞select查詢,但會(huì)嚴(yán)重阻塞dml操作。另外,如果你要對(duì)表進(jìn)行ddl操作,由于有一個(gè)拷貝操作,你要計(jì)算好你的可用空間夠不夠?如果你的系統(tǒng)經(jīng)常要進(jìn)行MySQL修改表結(jié)構(gòu),那么你將不得不要考慮此問題!


網(wǎng)站題目:MySQL修改表結(jié)構(gòu)時(shí)的拷貝問題
文章地址:http://www.5511xx.com/article/djssohp.html