大数据量分表经验
- 我们可以建一个存储过程
- 写一个job去执行这个存储过程
- 用dblink去备份过时的数据
存储过程
- 我们可以先用create table tabname tablespace SMS_NEW_1 as select .......去创建表
- 如果有扫描表的程序,我们创建新表的时候可以先用一个其他的名字,等索引和数据都创建和转移好再把表改回.否则会因为表被锁住导致执行失败.
JOB
- 可以使用select * from sys.user_jobs查看有哪些job
- 使用下面的方法创建job,关于执行的时间参考https://www.cnblogs.com/Chestnuts/p/7068456.html
declare
job number;
begin
sys.dbms_job.submit(job => job,
what => 'TESTBAKSMSLOG;',
next_date => to_date('11-12-2018 00:00:00', 'dd-mm-yyyy hh24:mi:ss'),
interval => 'TRUNC(sysdate+1) + 5/24 ');
commit;
end;