1.使用前备份

mysqldump -uroot -p fission_statistics room_break_history > room_break_history_20170704.dump

2.pt-osc执行DDL

pt-online-schema-change --user='root' --host='localhost' --ask-pass --alter "CHANGE break_type break_type INT(11) NOT NULL,CHANGE app_id app_id INT(11) NOT NULL,CHANGE room_id room_id INT(11) NOT NULL,CHANGE from_user_id from_user_id INT(11) NOT NULL,CHANGE to_user_id to_user_id INT(11) NOT NULL,CHANGE content_type content_type INT(11) NOT NULL,CHANGE source_message source_message VARCHAR(1536) CHARSET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,CHANGE send_message send_message VARCHAR(1536) CHARSET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,CHANGE request_type request_type INT(4) NOT NULL,CHANGE handle_type handle_type INT(11) NOT NULL,CHANGE handle_uid handle_uid INT(11) NOT NULL,CHANGE create_time create_time DATETIME NOT NULL,DROP INDEX idx_from_user_id,ADD  INDEX idx_handle_time (handle_type, create_time)" D=fission_statistics,t=room_break_history --execute

3.只输出测试结果

./bin/pt-online-schema-change --user='root' --host='localhost' --ask-pass -S /tmp/mysql.sock --alter "ADD  INDEX idx_from_user_id (from_user_id,room_id,handle_type, create_time)" D=fission_statistics,t=room_break_history --dry-run --print

内容来源于网络如有侵权请私信删除
你还没有登录,请先登录注册
  • 还没有人评论,欢迎说说您的想法!