cari

Rumah  >  Soal Jawab  >  teks badan

Bagaimana untuk mengakses MysqlServer pada PC saya melalui skrip PHP pada pelayan pengehosan jauh

Saya memasang MysqlServer dan Mysql Workbench pada komputer saya. Pelayan berjalan dengan baik (hijau). Sekarang saya mempunyai pelayan pengehosan bersama dan saya ingin mendapatkan data daripada pangkalan data pada komputer saya melalui skrip PHP. Belum ada pangkalan data atau sebarang data kerana saya hanya mahu mewujudkan sambungan antara kedua-dua pelayan itu terlebih dahulu. Saya telah cuba untuk menyambung banyak kali tetapi setakat ini tidak berjaya.

→ Menggunakan fail pilihan Workbench, saya memasukkan alamat-bind alamat IP yang disediakan oleh pelayan pengehosan. (iaitu pelayan jauh yang saya ingin akses daripada MysqlServer pada komputer saya).

→ Saya juga mendayakan sambungan SSL kerana tapak web pengehosan saya berasaskan SSL.

→ Kemudian, dalam Pengguna dan Kebenaran, saya meletakkan % pada root supaya root boleh menyambung ke MysqlServer pada komputer saya daripada hos lain (bukan hanya localhost).

→ Saya telah membenarkan peraturan masuk untuk port 3306 pada Windows Firewall.

→ Kod asas yang saya gunakan ialah sambungan pangkalan data PHP PDO asas, di mana $host ialah IP awam komputer saya, $port ialah 3306, $root ialah root, dan kata laluan ialah kata laluan yang saya buat semasa saya memasang MysqlServer.

Kod asas yang saya gunakan ialah:

try
{
    $dbh = new PDO("mysql:host=".$host.";port=".$port, $root, $root_password);
}
catch (Exception $e)
{
    die('Erreur : ' . $e->getMessage());
}
?>

→ Ralat yang saya hadapi ialah: SQLSTATE[HY000] [2002] Tidak dapat menyambung ke pelayan MySQL "Alamat IP Awam Komputer Saya".

Ada sesiapa yang mengalami masalah ini? Bolehkah anda melihat sesuatu yang aneh yang boleh membantu saya? Sebarang jawapan, cadangan, komen atau soalan adalah dialu-alukan.

P粉317679342P粉317679342448 hari yang lalu518

membalas semua(1)saya akan balas

  • P粉511749537

    P粉5117495372023-09-07 16:22:10

    Terdapat dua cara untuk menyambung ke pangkalan data-

    $connect = new PDO('mysql:host=localhost;port=3306;dbname=dbname','root','');
    $connect->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

    atau

    $connect = new mysqli("localhost","root","","dbname");

    balas
    0
  • Batalbalas