cari

Rumah  >  Soal Jawab  >  teks badan

C# aplikasi kendiri akses jauh MySQL terus ke pelayan pengehosan

<p>Daripada apa yang saya faham, saya telah melakukan banyak penyelidikan tentang Putty, SSH, DDNS, dsb. untuk menyambungkan IP dinamik aplikasi kendiri PC C# saya kepada pangkalan data MySQL yang dihoskan. Memandangkan ia adalah IP dinamik, saya perlu menambah alamat IP ke senarai putih setiap kali. Bolehkah sesiapa membantu saya menyelesaikan masalah ini menggunakan pengekodan C#? Saya hanya mahu menyambung ke MySQL yang dihoskan secara langsung menggunakan rentetan sambungan dan melakukan operasi tambah, kemas kini, padam. Terima kasih. </p>
P粉033429162P粉033429162461 hari yang lalu545

membalas semua(1)saya akan balas

  • P粉821231319

    P粉8212313192023-08-17 13:01:58

    Untuk menyambung daripada aplikasi kendiri C# anda ke pangkalan data MySQL yang dihoskan pada pelayan jauh, anda boleh menggunakan pustaka MySQL Connector/NET. Pustaka ini menyediakan alatan yang diperlukan untuk mewujudkan sambungan dan melaksanakan pelbagai operasi pangkalan data. Begini cara anda boleh melakukannya:

    1- Pasang MySQL Connector/NET: Jika anda belum memasang pakej MySQL Connector/NET, sila pasangkannya dalam projek C# anda. Anda boleh memasangnya melalui pengurus pakej NuGet. Cari "MySql.Data" dan pasang pakej rasmi MySQL Connector/NET.

    2- Rentetan sambungan: Anda perlu membina rentetan sambungan dengan butiran yang diperlukan untuk menyambung ke pangkalan data MySQL. Memandangkan anda menyebut bahawa IP anda adalah dinamik dan perlu ditambahkan pada senarai putih setiap kali, anda mungkin perlu melaraskan rentetan sambungan setiap kali. Berikut ialah contoh asas rentetan sambungan:

    string server = "your-server-ip";
    string database = "your-database-name";
    string uid = "your-username";
    string password = "your-password";
    
    string connectionString = $"Server={server};Database={database};Uid={uid};Pwd={password};";

    3- Lakukan operasi pangkalan data: Selepas menyediakan rentetan sambungan, anda boleh menggunakan pustaka MySQL Connector/NET untuk melaksanakan operasi pangkalan data seperti INSERT, UPDATE, DELETE, dsb. Berikut ialah contoh menjalankan operasi INSERT:

    using MySql.Data.MySqlClient;
    
    // ...
    
    using (MySqlConnection connection = new MySqlConnection(connectionString))
    {
        connection.Open();
    
        string query = "INSERT INTO your_table (column1, column2) VALUES (@val1, @val2)";
        using (MySqlCommand command = new MySqlCommand(query, connection))
        {
            command.Parameters.AddWithValue("@val1", value1);
            command.Parameters.AddWithValue("@val2", value2);
    
            command.ExecuteNonQuery();
        }
    }

    Begitu juga, anda boleh mengubah suai pertanyaan untuk operasi KEMASKINI dan PADAM.

    Sila ingat bahawa atas sebab keselamatan, sebaiknya gunakan pertanyaan berparameter (seperti yang ditunjukkan di atas) untuk mengelakkan serangan suntikan SQL.

    Berkenaan isu IP dinamik, jika alamat IP anda kerap berubah dan perlu ditambahkan pada senarai putih setiap kali, anda boleh mempertimbangkan untuk menyediakan VPN atau menggunakan perkhidmatan Dynamic DNS (DDNS) untuk mendapatkan alamat IP yang sepadan dengan IP dinamik anda Nama hos yang konsisten. Ini memberi anda titik sambungan yang lebih stabil dan memudahkan persediaan senarai putih. Selain itu, anda juga mungkin ingin berbincang dengan pembekal pengehosan anda sama ada terdapat pilihan sambungan jauh yang lebih selamat dan terurus, seperti menyediakan terowong SSH atau menggunakan rangkaian peribadi maya.

    balas
    0
  • Batalbalas