Mengapa Saya Tidak Boleh Menyambung ke Pangkalan Data MySQL Saya dengan PHP 5.3.0?

Patricia Arquette
Lepaskan: 2024-11-03 15:57:30
asal
644 orang telah melayarinya

Why Can't I Connect to My MySQL Database with PHP 5.3.0?

Mengatasi Ketidakserasian MySQL PHP

Apabila cuba menyambung ke pangkalan data MySQL jauh menggunakan PHP 5.3.0, pengguna mungkin menghadapi isu pelik yang terhasil dalam ralat yang berkaitan dengan panjang paket dan pengesahan lama. Ketidakserasian ini berlaku apabila menyambung ke pangkalan data yang menjalankan MySQL versi 5.0.22, manakala sambungan ke pangkalan data lain dengan versi 5.0.45 berjaya.

Menyingkap Punca Punca

Punca asas ketidakserasian ini terletak pada kata laluan akaun MySQL. Jika kata laluan ialah rentetan 16 aksara yang lebih lama, sambungan mysqlnd MySQL tidak dapat menggunakannya untuk mewujudkan sambungan ke pelayan MySQL.

Menyelesaikan Isu

Untuk betulkan isu ini, dua laluan penyelesaian boleh diikuti:

  1. Tetapkan Semula Kata Laluan Pengguna:

    • Tetapkan semula kata laluan untuk pengguna yang terjejas menggunakan arahan berikut:
      TETAPKAN KATA LALUAN UNTUK 'nama pengguna'@'hostmask' = KATA LALUAN('kata laluan')
  2. Semak Tetapan Pelayan:

    • Sahkan jika pelayan dikonfigurasikan untuk menggunakan atau mencipta kata laluan lama secara lalai.

Menentukan Panjang Kata Laluan

Untuk menentukan panjang kata laluan pengguna yang terjejas, laksanakan pertanyaan berikut pada pelayan MySQL yang bermasalah:

SELECT
  Length(`Password`),
  Substring(`Password`, 1, 1)
FROM
  `mysql`.`user`
WHERE
  `user`='username'
Salin selepas log masuk

Ganti 'nama pengguna' dengan nama pengguna sebenar yang digunakan dalam fungsi mysql_connect().

Jika pertanyaan mengembalikan panjang 16 dan aksara pertama ialah '*', ia mengesahkan bahawa kata laluan itu ialah cincangan 16 aksara lama. Ini menandakan keperluan untuk menetapkan semula kata laluan menggunakan kaedah yang dinyatakan sebelum ini.

Dengan menangani isu kata laluan yang sudah lapuk, anda boleh berjaya menyambung ke pangkalan data MySQL jauh menggunakan PHP 5.3.0, menyelesaikan ketidakserasian yang dihadapi.

Atas ialah kandungan terperinci Mengapa Saya Tidak Boleh Menyambung ke Pangkalan Data MySQL Saya dengan PHP 5.3.0?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan