Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

mysqli::mysqli():(HY000/2002):Tidak dapat terhubung ke server MySQL lokal melalui soket 'MySQL' (2)

Ketika Anda hanya menggunakan "localhost" perpustakaan klien MySQL mencoba menggunakan soket domain Unix untuk koneksi alih-alih koneksi TCP/IP. Kesalahan memberi tahu Anda bahwa soket, yang disebut MySQL , tidak dapat digunakan untuk membuat koneksi, mungkin karena tidak ada (kesalahan nomor 2).

Dari Dokumentasi MySQL :

Di Unix, program MySQL memperlakukan nama host localhost secara khusus, jauh dari yang Anda harapkan dibandingkan dengan program berbasis jaringan lainnya. Untuk koneksi ke localhost, program MySQL mencoba terhubung ke server lokal dengan menggunakan file soket Unix. Hal ini terjadi bahkan jika opsi --port atau -P diberikan untuk menentukan nomor port. Untuk memastikan bahwa klien membuat koneksi TCP/IP ke server lokal, gunakan --host atau -h untuk menentukan nilai nama host 127.0.0.1, atau alamat IP atau nama server lokal. Anda juga dapat menentukan protokol koneksi secara eksplisit, bahkan untuk localhost, dengan menggunakan opsi --protocol=TCP.

Ada beberapa cara untuk mengatasi masalah ini.

  1. Anda bisa menggunakan TCP/IP sebagai ganti soket Unix. Anda akan melakukannya dengan menggunakan 127.0.0.1 bukannya localhost ketika Anda terhubung. Namun, soket Unix mungkin lebih cepat dan lebih aman untuk digunakan.
  2. Anda dapat mengubah soket di php.ini :buka file konfigurasi MySQL my.cnf untuk menemukan di mana MySQL membuat soket, dan mengatur mysqli.default_socket PHP ke jalan itu. Di sistem saya ini /var/run/mysqld/mysqld.sock .
  3. Konfigurasikan soket langsung di skrip PHP saat membuka koneksi. Misalnya:

    $db = new MySQLi('localhost', 'kamil', '***', '', 0, 
                                  '/var/run/mysqld/mysqld.sock')
    


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Contoh UTC_DATE – MySQL

  2. Cara Mengakses MySQL dengan Pengguna Root MySQL

  3. Bekerja dengan Database MySQL cPanel

  4. Penyortiran Alami di MySQL

  5. Bagaimana cara memilih tanggal dari kolom datetime?