Il problema non riguarda database diversi.
La tua clausola WHERE fa riferimento al campo database_1.table_1.data_1 che non è stato fornito nella clausola FROM.
Non intendevi qualcosa come
SELECT *
FROM database_2.table_2
JOIN database_1.table_1
ON (database_2.table_2.some_field = database_1.table_1.some_other_field)
WHERE database_1.table_1.data_1 LIKE database_2.table_2.data_2
?
Inoltre,
echo mysql_error();
dopo la tua query fallita, questo ti darà un'idea di cosa c'è che non va.