/* source 07-demo-online-ddl-add-column-01-setup.sql *//* target_table(id, name1) */DROPTABLEIFEXISTS test.target_table;CREATETABLE test.target_table(
id bigint PRIMARYKEYAUTO_RANDOM,
name1 char(20));/* Seed */DROPTABLEIFEXISTS test.seed;CREATETABLE test.seed(name char(20));
insert into test.seed(name)values('BEFORE-DDL'),('BEFORE-DDL'),('BEFORE-DDL'),('BEFORE-DDL'),('BEFORE-DDL');
insert into test.seed select * from test.seed;
insert into test.seed select * from test.seed;
insert into test.seed select * from test.seed;
insert into test.seed select * from test.seed;
insert into test.seed select * from test.seed;
insert into test.seed select * from test.seed;
select count(*)as"|320|" from test.seed;DESC test.target_table;
/* source 07-demo-online-ddl-add-column-01-workload-before.sql *//* Toggle autocommit with caution, you might create a very long TX. *//* SET @@autocommit = 0; *//* SET @@transaction_isolation='read-committed'; *//* One Error is expected. */BEGIN;INSERTINTO test.target_table(id, name1)SELECTNULL, name FROM test.seed;INSERTINTO test.target_table(id, name1)SELECTNULL, name FROM test.seed;INSERTINTO test.target_table(id, name1)SELECTNULL, name FROM test.seed;COMMIT;SELECT name1 as"|NAME1|",count(*)as"|BEFORE-DDL-GOAL: 192000|"FROM test.target_table
GROUPBY name1;
#!/bin/bash
# ./07-demo-online-ddl-add-column-01-workload-before.sh
mysql -h 127.0.0.1-P4000-u root <07-demo-online-ddl-add-column-01-setup.sql
sleep 5;for i in$(seq 1200);do
mysql -h 127.0.0.1-P4000-u root <07-demo-online-ddl-add-column-01-workload-before.sql
done;