標籤:
1, 安裝dbd perl-io-socket-ssl percona-toolkityum list|grep DBDyum list|grep Socket|grep SSL yum -y install perl-DBD-MySQL.x86_64yum -y install perl-IO-Socket-SSL.noarchyum -y install "perl(Term::ReadKey)" wget https://www.percona.com/downloads/percona-toolkit/2.2.17/RPM/percona-toolkit-2.2.17-1.noarch.rpmrpm -ivh percona-toolkit-2.2.17-1.noarch.rpm
2,查看字元集show variables like ‘character%‘;
3, 開始添加欄位:pt-online-schema-change \--user=root \--password=‘[email protected]%[email protected]#‘ \--host=127.0.0.1 \--port=3306 \--charset=utf8 \--alter="add index idx_url_date (mg_url, mg_datetime)" \D=spider,t=js_mogu_goods \--exec \--max-load Threads_running=1000 \--critical-load="Threads_running:200" 相關參數:--nodrop-old-table 不刪除表--max-load Threads_running= 超過此值將暫停--critical-load Threads_running= 超過此值將停止
4,--alter-foreign-keys-method 的值可以為:auto、rebuild_constraints、drop_swap、none1、當業務量較大時,修改操作會等待沒有資料修改後,執行最後的rename操作。因此,在修改表結構時,應該盡量選擇在業務相對空閑時,至少修改表上的資料操作較低時,執行較為妥當。 2、如果對外鍵表操作時,四種外鍵操作類型需要根據表的資料量和可靠程度,進行選擇。處於可靠性的原因,盡量使用rebuild_constraints類型,如果沒有可靠性要求,可以使用auto類型。 3、當--alter-foreign-keys-method=none時,外鍵索引將失效,需要重建外鍵索引,方可再次使用 4、由於可能存在一定的風險,在操作之前,建議對資料表進行備份,可以使得操作更安全、可靠。
MYSQL加欄位之pt-online-change-schema