Sle*_*ter 3 mysql high-availability mysqlimport
每天一次,我需要使用ftp和mysqlimport从Net下载的新文件更新MySQL表.但是,我希望我的网站在mysqlimport操作期间保持平稳运行,这需要相当长的时间(这是一个很大的表).什么是确保用户不等待导入完成的好方法?我正在考虑导入临时表,然后重命名它.这是一个好计划吗?
一个鲜为人知的事实是,您可以在mysql中连接多个重命名语句,它将以原子方式执行所有名称更改.
create table newtable like oldtable;
insert into newtable .......
rename table oldtable to deleteme, newtable to oldtable;
drop table deleteme;
Run Code Online (Sandbox Code Playgroud)
重命名表将阻止读者(实际上它将阻止名称的任何解析)但应该是一个非常快速的操作.