2 つのテーブルがあり、1 つはローカル データベースにあり、もう 1 つはリモート サーバーにあります。C# でポート フォワーディングを使用して、ssh リモート接続を localhost:3306 に取得します。ローカル データベースは localhost:3307 にあります。
両方とも localhost 上にあり、ポートが異なる場合、あるテーブルを別のテーブルにコピーするにはどうすればよいですか。
これは私がやりたいクエリです:
cmd = new MySqlCommand(String.Format("INSERT INTO {0} (a,b,c,d) SELECT (a,b,c,d) FROM {1}", ConfigSettings.ReadSetting("main_table"), ConfigSettings.ReadSetting("main_table")), con);
両方のテーブルに同じ列があるため、構成設定からの入力を 1 つだけ使用しています。
しかし、それらは異なるポートにあるため、2 つの接続文字列があります。
con.ConnectionString = ConfigurationManager.ConnectionStrings["con1"].ConnectionString;
con2.ConnectionString = ConfigurationManager.ConnectionStrings["con2"].ConnectionString
MySqlでFEDERATED接続を使用したくないので、クエリをこれら2つのポートで動作させる方法はありますか? 両方とも同じサーバー上にあるため、方法があるに違いありません。
ありがとうございました
編集:
接続文字列:
<add name="Con2" connectionString="server=localhost;port=3307;user id=root;Password=*****;database=data" providerName="MySql.Data.MySqlClient"/>
<add name="Con1" connectionString="server=localhost;port=3306;user id=root;Password=******;database=data" providerName="MySql.Data.MySqlClient"/>