Anda telah mengalami ralat semasa menyambung ke pangkalan data anda menggunakan SSH dan perpustakaan ssh2. Khususnya, ralat ialah "mysqli_connect() menjangkakan parameter 6 sebagai rentetan, sumber diberikan."
Mesej ralat di atas menunjukkan bahawa anda telah menghantar jenis yang salah kepada parameter keenam fungsi mysqli_connect.
Untuk menyelesaikan isu, hantar rentetan dan bukannya sumber sebagai parameter keenam. Dalam kes anda, parameter ini dijangka menjadi laluan ke soket terowong SSH.
Untuk menyambung ke pelayan MySQL melalui SSH, anda perlu menyediakan terowong SSH menggunakan langkah berikut:
1. Perintah Terowong SSH:
ssh -fNg -L 3307:10.3.1.55:3306 [email protected]
2. Sambungan Pelanggan MySQL:
Setelah terowong disediakan, anda boleh menyambung ke pelayan MySQL anda menggunakan klien MySQL tempatan anda:
mysql -h 127.0.0.1 -P 3307 -u dbuser -p passphrase
3. Sambungan PHP:
Akhir sekali, sambung ke pelayan MySQL anda dalam aplikasi PHP anda:
<code class="php"><?php $smysql = mysql_connect("127.0.0.1:3307", "dbuser", "passphrase"); mysql_select_db("db", $smysql); ?></code>
Nota Keselamatan:
Untuk dipertingkatkan keselamatan, gunakan hos benteng (Jumpbox) sebagai proksi SSH dan bukannya menyambung terus ke pelayan MySQL anda.
Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan \'mysqli_connect() menjangkakan parameter 6 sebagai rentetan, sumber diberi\' Ralat semasa Menyambung ke MySQL Melalui SSH dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!