Раньше я запускал эту команду, чтобы вставить несколько строк в таблицу счетчиков:
insert into `monthly_aggregated_table`
select year(r.created_at), month(r.created_at), count(r.id) from
raw_items r
group by 1,2;
Этот запрос очень тяжелый и требует некоторого времени для выполнения (миллионы строк), а таблица raw_items
— это MyISAM, поэтому она вызывала блокировку таблицы, и записи в нее приходилось ждать завершения вставки.
Теперь я создал подчиненный сервер для выполнения SELECT
.
Что я хотел бы сделать, так это выполнить SELECT
в ведомом устройстве, но получить результаты и вставить их в основную базу данных. Является ли это возможным? Как? Каков наиболее эффективный способ сделать это? (Раньше во вставке было 1,3 миллиона строк)
Я использую MariaDB 10.0.17.