Kesalahan menghubungkan enoent /applications/mamp/tmp/mysql/mysql sock

                                    Solution #1: Check If MySQL Service is Runnning.
Solution #2: Connect with 127.0. 0.1.
Solution #3: Modify the my. cnf file.
Solution #4: Verify mysql. sock Location.
Solution #5: Change MySQL Folder Permission.
Solution #6: Multiple MySQL Instances.

Secara default, penginstalan MAMP dapat menonaktifkan jaringan TCP/IP dan dapat menggunakan lokasi file soket lokal khusus saat meluncurkan MySQL. Misalnya, file konfigurasi MAMP mungkin mengaktifkan jaringan lewati dan dapat menggunakan yang berikut ini untuk lokasi soket lokal

/Aplikasi/MAMP/tmp/mysql/mysql. kaus kaki

Banyak alat MySQL memerlukan jaringan TCP/IP untuk diaktifkan, atau memerlukan mysql. file sock untuk ditempatkan di lokasi tertentu

Karena penginstalan MAMP default tidak mengaktifkan jaringan TCP/IP, alat yang menggunakan JDBC, yaitu. e. , driver MySQL Connector/J JDBC, tidak akan dapat terhubung tanpa perubahan konfigurasi

Untuk mengaktifkan koneksi TCP/IP, parameter skip-networking di file konfigurasi mysql harus dikomentari. Juga, jika Anda tidak ingin mengizinkan koneksi jarak jauh ke database mysql Anda, mis. e. , Anda ingin satu-satunya koneksi ke database Anda berasal dari mesin lokal, parameter bind-address dapat diatur ke 127. 0. 0. 1

Membuat perubahan di atas harus memungkinkan alat seperti RazorSQL untuk terhubung ke database MySQL MAMP Anda

Di bawah ini adalah informasi tentang perubahan konfigurasi yang diperlukan agar alat yang mengharapkan mysql. file sock yang akan ditempatkan di folder /tmp berfungsi dengan benar

Salah satu cara untuk mengubah lokasi soket adalah dengan mengedit skrip start dan stop MAMP sehingga file mysql. lokasi kaus kaki adalah default. Ini dapat dilakukan dengan mengedit file-file berikut

/Applications/MAMP/bin/startMysql. SH
/Applications/MAMP/bin/stopMysql. SH

Mengganti

socket=/Applications/MAMP/tmp/mysql/mysql. kaus kaki

dengan

socket=/tmp/mysql. kaus kaki

Solusi sementara adalah membuka jendela terminal dan menjalankan yang berikut ini

sudo ln -s /Applications/MAMP/tmp/mysql/mysql. kaus kaki /tmp/mysql. kaus kaki

Ini akan membuat tautan simbolis ke file soket MAMP dari lokasi file soket normal. Tautan ini akan hilang saat MAMP dihentikan atau mesin Anda dihidupkan ulang

Saya mendapatkan kesalahan ini kemarin ketika mencoba menyambung ke database mysql saya setelah menjalankannya dengan NodeJS. Ada banyak informasi yang saling bertentangan di web karena cara Anda mengunduh mysql, versi, OS yang Anda gunakan, dll.

Untuk perbaikan cepat pada sistem unix saya sarankan melakukan hal berikut. Langkah-langkah di bawah ini berhasil untuk saya, dan mungkin juga berhasil untuk Anda. Namun, Anda harus menginstal HomeBrew jika Anda belum memilikinya

Saya telah mengerjakan localhost saya dengan Drupal 5. 1 berhasil; . Soket MySQL di server lokal saya (yang berfungsi dengan baik) adalah '/var/mysql/mysql. kaus kaki'; . sock' dan gagal, menghasilkan Can't connect to local MySQL server through socket '/tmp/mysql. pesan kesalahan kaus kaki

5 sudah saya pindahkan. 1 file Drupal ke folder lain untuk instalasi Drupal 6;

Saya sudah mencoba menambahkan baris berikut ke default. pengaturan. php di bagian "Pengaturan PHP" (ini dari pos lain; saya bukan pembuat kode)

ini_set('mysql. default_socket', '/var/mysql/mysql. kaus kaki');

sia-sia

Butuh waktu lama bagi saya untuk membuat server lokal berfungsi (terus terang, saya tidak tahu bagaimana saya melakukannya) dan saya ragu saya bahkan bisa kembali dan mengacaukan file sistem. Apakah ada cara untuk mengubah file instalasi apa pun agar mengarah ke instance server saya dengan benar, seperti 5. 1 tidak?

Jadi Anda mem-boot lingkungan lokal baru untuk pertama kalinya atau mungkin Anda memiliki beberapa bentuk pembaruan sistem dan Anda kehilangan pengaturan. Anda tidak menggunakan OSX asli dan Anda lebih suka menggunakan tumpukan MAMP. Anda juga sudah terbiasa menggunakan baris perintah untuk semuanya - bahkan sebagian besar kueri basis data Anda. Anda telah mem-boot MAMP dan mySQL berjalan tetapi kemudian Anda mencoba untuk terhubung ke mySQL

mysql -u root -ppassword
_

BAM

Tidak dapat terhubung ke server MySQL lokal melalui socket /tmp/mysql. kaus kaki

Eh, apa? . Saya melakukan solusi yang kurang elegan terlebih dahulu sebelum saya menemukan solusi akar penyebab baru-baru ini

Klien mySQL secara default mencoba untuk terhubung melalui file lokal yang disebut soket alih-alih terhubung ke alamat loopback (127. 0. 0. 1) untuk host lokal. Lokasi default dari file soket ini, setidaknya di OSX, adalah /tmp/mysql. kaus kaki

SOLUSI CEPAT, KURANG ELEGAN
Buat symlink untuk menipu OS agar menemukan soket yang benar

ln -s /Applications/MAMP/tmp/mysql/mysql.sock /tmp/mysql.sock

Anda perlu me-reboot mySQL Anda sebelum ini akan berlaku

SOLUSI TEPAT
Anda dapat membuat perubahan pada file konfigurasi MySQL asli (/etc/my. cnf) yang secara permanen akan mengatur file soket yang digunakan oleh klien MAMP mySQL

Artikel oleh Quinn McHenry ini menunjukkan beberapa baris kode untuk melakukan ini, meskipun saya mengingatkan Anda bahwa tujuan untuk pengguna MAMP haruslah sesuatu yang sejalan