percona toolkit 3.4.0
MySQL 8.0版本
pt-archiver 归档
pt-online-schema-change 在线ddl
表必须要有主键
create table t2 like t1;
归档表,归档的表要有主键:
创建一个用来归档的账户
create user pt identitied with mysql_native_password by 'toolkit';
grant all on *.* to pt@'%';
不检查字符集 不删除数据
pt-archiver --source h=192.168.137.5,D=test,t=t100w,u=pt, p=toolkit \
--dest h=192.168.137.5,D=test ,t=test1,u=pt ,p=toolkit \
--where 'd <1000' --no-check-charset --no-delete --limit=100 \
--commit-each --progress 200 --statistics
归档完清理原表的数据:
pt-archiver --source h=192.168.137.5,D=test,t=t100w ,u=pt,p=toolkit \
--where 'id<1000' --purge --limit=1 --no-check-charset
PT工具的使用:
pt-online-schema-change --user=root --password=oracle --host=192.168.137.5 \
--alter "add column state int not null default 1" D=test, t=t100w --print --execute
pt-online-schema-change --user=root --password=oracle --host=192.168.137.5 \
--alter "add index idx(num)" D=test,t=t100w --print --execute
docker images == docker image ls
systemctl status docker 查看状态
systemctl stop docker 关闭
systemctl start docker 开启
在docker中部署mysql
docker run -id \
-p 3307:3306 \
--name=c_mysql \
-v $PWD/conf:/etc/mysql/conf.d \
-v $PWD/logs:/logs \
-v $PWD/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
mysql
docker-exec -it c_mysql /bin/bash
网友评论