Rumah  >  Artikel  >  pangkalan data  >  Tidak dapat menyambung ke pelayan MySQL pada 'server_name' (10061) - Cara menyelesaikan ralat MySQL: Tidak dapat menyambung ke pelayan, nombor ralat: 10061

Tidak dapat menyambung ke pelayan MySQL pada 'server_name' (10061) - Cara menyelesaikan ralat MySQL: Tidak dapat menyambung ke pelayan, nombor ralat: 10061

PHPz
PHPzasal
2023-10-05 13:17:161854semak imbas

Can't connect to MySQL server on 'server_name' (10061) - 如何解决MySQL报错:无法连接到服务器,错误编号:10061

Tidak dapat menyambung ke pelayan MySQL pada 'server_name' (10061) - Cara menyelesaikan ralat MySQL: Tidak dapat menyambung ke pelayan, nombor ralat: 10061, memerlukan contoh kod khusus

Apabila menggunakan MySQL untuk membangunkan atau mengurus pangkalan data, kadangkala anda akan menghadapi masalah tidak dapat menyambung ke pelayan Mesej ralat biasa ialah "Tidak dapat menyambung ke pelayan MySQL 'nama_pelayan' (10061)" . Keadaan ini biasanya disebabkan oleh salah konfigurasi sambungan, masalah rangkaian, atau pelayan MySQL yang tidak bertindak balas. Artikel ini akan menerangkan punca ralat ini dan menyediakan beberapa penyelesaian, termasuk kod sampel.

  1. Semak nama pelayan dan nombor port
    Pertama, pastikan nama pelayan dan nombor port yang diberikan adalah betul. Biasanya, pelayan MySQL menggunakan nombor port standard 3306, tetapi ini mungkin berubah dalam beberapa kes. Pastikan anda menggunakan nama pelayan dan nombor port yang betul.
  2. Sahkan pelayan MySQL sedang berjalan
    Gunakan arahan berikut untuk menyemak sama ada pelayan MySQL anda sedang berjalan:

    $ sudo service mysql status

    Jika ia tidak berjalan, anda boleh menggunakan Perintah berikut memulakannya:

    $ sudo service mysql start

    Pastikan pelayan MySQL telah berjaya dimulakan.

  3. Semak Tetapan Firewall
    Jika firewall didayakan pada pelayan anda, ia mungkin perlu dikonfigurasikan dengan sewajarnya untuk membenarkan sambungan masuk ke pelayan MySQL. Pastikan firewall disediakan dengan betul untuk membenarkan sambungan ke pelayan menggunakan nombor port MySQL.

Berikut ialah contoh menggunakan arahan iptables untuk membenarkan sambungan TCP ke port 3306:

$ sudo iptables -A INPUT -p tcp --dport 3306 -j ACCEPT

Sila ambil perhatian bahawa tetapan firewall tertentu mungkin berbeza bergantung pada sistem pengendalian dan konfigurasi berbeza. Untuk mengetahui lebih lanjut tentang mengkonfigurasi tembok api anda, rujuk dokumentasi sistem pengendalian yang berkaitan atau tanya pentadbir sistem anda.

  1. Semak kebenaran pengguna MySQL
    Jika anda menggunakan pelayan MySQL jauh, bukannya pelayan tempatan, anda perlu memastikan anda mempunyai kebenaran yang sesuai untuk mengakses pelayan MySQL . Sila semak tetapan kebenaran pengguna MySQL anda untuk memastikan anda mempunyai akses yang sesuai kepada pangkalan data yang perlu anda sambungkan.

Berikut ialah contoh memberikan pengguna tertentu semua kebenaran kepada semua pangkalan data:

GRANT ALL PRIVILEGES ON *.* TO 'username'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;

Sila ambil perhatian bahawa "nama pengguna" dan "kata laluan" di atas contoh hendaklah Gantikan dengan nama pengguna dan kata laluan sebenar anda.

  1. Semak fail konfigurasi MySQL
    Kadangkala, beberapa tetapan dalam fail konfigurasi MySQL mungkin menghalang sambungan. Sila semak tetapan dalam fail konfigurasi MySQL (biasanya terletak di /etc/mysql/mysql.conf.d/mysqld.cnf atau /etc/mysql/my.cnf) untuk memastikan tiada salah konfigurasi atau konfigurasi yang menghalang sambungan.

Berikut ialah contoh konfigurasi untuk membenarkan sambungan jauh:

bind-address  = 0.0.0.0

Sila pastikan tiada tetapan lain dalam fail konfigurasi anda yang menyekat sambungan.

  1. Menguji sambungan
    Langkah terakhir untuk menyelesaikan masalah ialah cuba menguji dalam kod sama ada sambungan berjaya. Berikut ialah contoh kod menggunakan bahasa pengaturcaraan Python untuk menguji sambungan MySQL:

    import mysql.connector
    
    try:
     connection = mysql.connector.connect(
         host="server_name",
         user="username",
         password="password",
         database="database_name"
     )
     if connection.is_connected():
         print("Connected to MySQL server")
         connection.close()
     else:
         print("Failed to connect to MySQL server")
    except mysql.connector.Error as error:
     print("Failed to connect to MySQL server: {}".format(error))

    Sila pastikan untuk menggantikan "server_name", "username", "password" dan "database_name" dalam kod dengan nilai sebenar . Jalankan kod ini Jika sambungan berjaya, "Disambungkan ke pelayan MySQL" akan dipaparkan, jika tidak, "Gagal untuk menyambung ke pelayan MySQL" akan dipaparkan.

Ringkasan:
Dalam proses menyelesaikan ralat MySQL "Tidak dapat menyambung ke pelayan MySQL pada 'server_name' (10061)", anda perlu sahkan pelayan dahulu Nama dan nombor port adalah betul, kemudian semak sama ada pelayan MySQL sedang berjalan dan semak tetapan firewall dan kebenaran pengguna. Juga, pastikan bahawa fail konfigurasi MySQL tidak mempunyai sebarang konfigurasi yang menghalang sambungan. Akhir sekali, anda boleh menggunakan kod ujian untuk mengesahkan bahawa sambungan telah berjaya. Saya harap penyelesaian dan kod sampel yang disediakan dalam artikel ini akan membantu anda menyelesaikan masalah ini.

Atas ialah kandungan terperinci Tidak dapat menyambung ke pelayan MySQL pada 'server_name' (10061) - Cara menyelesaikan ralat MySQL: Tidak dapat menyambung ke pelayan, nombor ralat: 10061. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn