3

我在 pl/sql 中找到了一个创建多线程索引的过程:

declare l_job number;
begin
    dbms_job.submit( l_job, 'execute immediate ''alter index idx1 rebuild'';' );
    commit;
    dbms_job.submit( l_job, 'execute immediate ''alter index idx2 rebuild'';' );
    commit;
end;

此过程将并行执行。

我可以在 MySQL 中编写这样的程序吗?MySQL 可以在单独的线程中执行过程吗?

4

1 回答 1

1

在 MySQL 中,每个客户端连接有 1 个线程。为了使这种并行化,您需要为您希望重建的每个索引启动一个客户端实例,并并行运行这些客户端。这个链接谈到了手头的限制:http ://www.mysqlperformanceblog.com/2010/10/27/mysql-limitations-part-4-one-thread-per-connection/

于 2013-02-26T15:55:13.967 回答