回覆列表
  • 1 # 使用者3653102638543

    MySQL線上表修改操作是一個歷史問題了,再5.6和5.7上有非常多的改進,很多情況下都不用鎖表了。如果你實在不想升級MySQL到新版本的話,建議使用percona的工具集(MySQL Tools & Management Software to Perform System Tasks by Percona)中的線上表結構修改pt-online-schema-change,不鎖表來修改表結構。其實原理也很簡單,新建和原表表結構一模一樣的表A",對這個表進行表結構修改,然後把表結構變更期間對該表的insert,update,delete重新應用上去,最後兩個表A和A"對調。當然,就算你是線上表結構修改,還是建議你在業務低峰期修改,避免一些問題。淘寶因為發現了pt-online-schema-change的部分bug,維護了自己的一套線上表結構變更的工具,但是原理是完全一致的。

  • 2 # 使用者7266214309263

    CREATE TRIGGER t_insert

    AFTER INSERT

    ON A

    FOR EACH ROW

    BEGIN

    INSERT INTO B VALUES ( NEW.name )

    END

    CREATE TRIGGER t_update

    AFTER UPDATE

    ON A

    FOR EACH ROW

    BEGIN

    UPDATE B SET B.NAME=NEW.NAME WHERE B.NAME=OLD.NAME

    END

  • 中秋節和大豐收的關聯?
  • 劉邦建立西漢,手下能人眾多,為何只對周勃如此信任?