成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

MySQL修改表結構時的拷貝問題

數據庫 MySQL
下文對MySQL修改表結構時的拷貝時間問題進行了測試分析,如果您在此方面也遇到過類似的問題,不妨一看,相信對您會有所啟迪。

MySQL修改表結構時難免會出現問題,而MySQL修改表結構時拷貝的時間嚴重影響了MySQL修改表結構的操作,下面就對該問題進行分析。

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

以下是測試過程:

  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. 現在對它進行表結構變更,增加一列:  
  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. 在上述表結構變更過程中,啟動另外一個會話,進行select查詢操作和一個更新操作:  
  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) –這里是阻塞的時間  
  55. Rows matched: 4 Changed: 4 Warnings: 0  
  56. [/coolcode]  
  57.  

通過以上實驗可以看出,對表進行ddl操作時,mysql并不阻塞select查詢,但會嚴重阻塞dml操作。另外,如果你要對表進行ddl操作,由于有一個拷貝操作,你要計算好你的可用空間夠不夠?如果你的系統經常要進行MySQL修改表結構,那么你將不得不要考慮此問題!
 

 

 

【編輯推薦】

10大常用MySQL命令行

通過MySQL命令行增加新用戶

通過索引優化MySQL語句的實例

MySQL權限表的介紹

授予MySQL用戶權限的實例

責任編輯:段燃 來源: 互聯網
相關推薦

2010-11-23 09:13:47

mysql修改表結構

2010-10-13 10:42:14

MySQL修改表結構

2010-10-08 09:38:42

mysql修改表

2010-05-18 18:19:40

MySQL修改表結構

2010-10-13 10:03:08

MySQL修改表結構

2010-10-13 10:27:35

MySQL修改表結構

2010-11-24 09:56:20

mysql拷貝表

2010-10-13 09:37:48

MYSQL修改表結構

2010-10-19 16:20:32

SQL SERVER表

2010-11-15 13:00:12

Oracle修改表結構

2010-05-18 09:48:55

MYSQL命令

2010-10-15 10:29:25

Mysql表結構

2010-11-23 12:39:05

MySQL InnoD

2010-11-23 13:24:16

MySQL MyISA

2010-09-16 16:29:15

sql server表

2010-09-25 15:49:07

SQL修改

2021-01-08 06:15:09

深拷貝淺拷貝寫時拷貝

2010-09-02 09:51:24

SQL刪除

2010-05-21 10:14:10

MySQL更改表結構

2010-05-18 16:29:44

MySQL修改表
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产精品久久精品 | 国产永久免费 | 91久久精品国产 | 欧美电影免费观看 | 久久成人一区 | 免费黄视频网站 | 日韩一区二区久久 | 亚洲精色 | 91干b| 国产视频一区在线 | 国产成人精品一区二区三区四区 | 日日操网站 | 亚洲视频区 | 99热首页| 色综合成人网 | 亚洲一区 | 久久av一区二区三区 | h视频在线观看免费 | 亚洲一区二区视频 | 成人av片在线观看 | 国产成人jvid在线播放 | 91社影院在线观看 | 四虎海外 | 精精国产xxxx视频在线野外 | 一区二区三区在线免费观看 | 国内精品伊人久久久久网站 | 国产精品日日做人人爱 | 久久成人免费视频 | www狠狠干 | 黄色免费看 | 欧美日韩精品一区二区 | 亚洲欧美高清 | 久久精品亚洲精品 | 日本不卡在线视频 | 亚洲久草 | 男女激情网 | 天天插天天操 | 91深夜福利视频 | 91精品国产综合久久精品 | 日韩高清成人 | 日本精品在线观看 |