You can get filtered data by two ways.
With the help of subquery
Select db2.store .* from db2.store where db2.store.id not in(Select db1.controller.id from db1.controller)
Here all new data which is not present in db1.controller will be displayed. You can display same result With the help of join also.
SELECT db2.store.* FROM db2.store LEFT JOIN db1.controller ON db2.store.ID = db1.controller.ID WHERE db1.controller.ID IS NULL
You will get the data which is not present in db1.controller
now iterate the data and execute your insert query.
Update
You can try below single query to add filtered records.
Insert into db1.controller (id,interface_name,store_number,file_seq_no,packet_seq_no,last_trans_start_date,last_trans_end_date,last_extract_datetime,is_enabled) SELECT db2.store.id, db2.store.interface_name, db2.store.store_number, 0, 0, db2.store.date_opened, db2.store.date_opened, db2.store.date_opened, db2.store.is_enabled FROM db2.store LEFT JOIN db1.controller ON db2.store.ID = db1.controller.ID WHERE db1.controller.ID IS NULL;