Non puoi estendere una query locale e remota in una richiesta:
$remote_update=mysql_query("INSERT INTO $tablename SELECT * from $tablename");
Questo dovrebbe ottenere i dati dalla selezione locale e inserire nel database remoto ?
La query opera su 1 database e 1 solo database. Stai cercando di recuperare i dati da una tabella e inserirli nella stessa tabella. E, naturalmente, questo fornisce una Duplicate entry '1' for key 'PRIMARY'