Saya telah menginstal server MySQL dan mencoba menghubungkannya, tetapi mendapatkan kesalahan:
Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
Saya telah memeriksa direktori / tmp saya dan tidak ada mysql.sock. Saya tidak dapat menemukan mysql.sock di mana pun. Saya membaca bahwa itu mungkin masuk
/var/lib/mysql/mysql.sock
Tetapi saya memeriksa di sana juga dan bahkan tidak ada direktori mysql, hanya ada beberapa postfix di dalam / lib. Adakah yang bisa membantu saya dengan masalah ini?
Jawaban:
Cobalah untuk memulai server MySQL:
mysql.server start
sumber
mysql.server start
Saya mendapat pertanyaan yang sama setelah memperbarui OS X Yosemite, well solusinya cukup sederhana, periksa preferensi sistem -> mysql, statusnya BERHENTI. Cukup restart dan berfungsi dengan baik di mac saya sekarang.
sumber
Untuk MAMP
Dari https://coderwall.com/p/w5kwzw/solved-can-t-connect-to-local-mysql-server-through-socket-tmp-mysql-sock
UPDATE: Setiap kali komputer saya restart saya harus memasukkan perintah ini, jadi saya membuat jalan pintas.
Lakukan hal berikut dalam tipe terminal:
Menambahkan
Menyimpan.
Dalam jenis terminal:
~: ...
untuk mencari konfigurasi .profile.Sekarang di terminal Anda cukup mengetik
sumber
Perintah berikut menyelesaikan masalah saya:
sumber
brew install mysql
tetapi tidak ada perintah homebrew mengatakan kepada saya untuk menjalankan bekerja dengan benar. Ini membuat setiap masalah hilang ... Terima kasih !! Apa sebenarnya baris pertama yang Anda tulis? Apa artinya?sudo brew services start mariadb
juga berfungsi untuk memulai mariadb saat boot (tidak hanya saat masuk). YAY! Terima kasih!Setelah mencoba semua solusi, itu hanya bekerja untuk saya setelah menentukan host
saat meminta kata sandi
tekan enter
dan itu akan berhasil, jika semuanya ok seperti di atas.
sumber
-h 127.0.0.1
, selalu dimintaCan't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
; setelah menambahkan argumen, itu berfungsi dengan baik.mysql -u root -h127.0.0.1
tanpa-p
bendera bekerja untuk saya, karena ketika saya menginstal MySQL saya tidak pernah menjalankanmysql_secure_installation
perintah. Pemahaman saya adalah bahwa dalam hal ini instalasi default ke kata sandi tidak diperlukan.Setelah berjuang berjam-jam, satu-satunya hal yang berhasil adalah
Kemudian lakukan instalasi yang aman dengan
Kemudian hubungkan ke db via
Mysql diinstal melalui homebrew dan versinya adalah
Menentukan versi mungkin bermanfaat karena solusinya mungkin berbeda berdasarkan versi.
sumber
Di file konfigurasi mysql Anda, yang ada di
/etc/my.cnf
buat perubahan di bawah ini dan kemudian restartmysqld
proses dameonSerta periksa utas terkait ini
Tidak dapat terhubung ke server MySQL lokal melalui soket '/ tmp/mysql.sock
sumber
/etc/mysql/my.cnf
/tmp/mysql.sock
sebagai lokasi kaus kakiSetelah menyelesaikan masalah saya:
Periksa di mana server MySQL Anda mendengarkan: netstat -nlp Jika mendengarkan TCP, gunakan 127.0.0.1 saat menyambungkan ke DB alih-alih "localhost"
Periksa dokumen MySQL di sini
sumber
Coba ini berhasil bagi saya.
sudo / usr/local/mysql/support-files/mysql.server mulai
sumber
Jika Anda menggunakan XAMPP di Mac OS X dan telah menginstal MySQL dengan Homebrew, Anda mungkin memiliki masalah ini. Di jendela manajer XAMPP, masuk ke Manage Server dan pilih MySQL, lalu klik configure dan buka file konfigurasi, di sana Anda memiliki path file socket, letakkan path di konfigurasi host MySQL Anda dan itu harus bekerja.
Ini sesuatu seperti ini:
kemudian, misalnya di Django:
Semoga ini membantu.
sumber
Pertama, mengetahui di mana direktori data bagi saya adalah kuncinya.
/usr/local/var/mysql
Di sini, setidaknya ada satu file dengan ekstensi .err diawali dengan nama mesin lokal saya. Itu semua info yang saya butuhkan untuk mendiagnosis.Saya pikir saya mengacaukannya dengan menginstal mysql 8 terlebih dahulu. Aplikasi saya tidak kompatibel dengan itu jadi saya harus menurunkan versi kembali ke 5.7
Solusi saya yang berhasil adalah pergi ke /usr/local/etc/my.cnf
Cari baris ini jika ada di sana. Saya pikir terkait mysql 8:
Hapus itu karena di mysql 5.7 mengatakan itu tidak suka di log kesalahan
Tambahkan juga baris ini di sana jika tidak ada di bawah bind-address.
Pergi ke
/tmp
direktori dan hapus semua file mysql.sock di sana. Pada awal server, itu akan membuat ulang file kaus kakiBuang direktori data dengan mySQL dalam status berhenti. Milik saya
/usr/local/var/mysql
. Ini adalah tempat yang sama di mana log beradaDari sana saya lari
Kemudian semuanya mulai berfungsi ... perintah ini akan memberi Anda kata sandi acak di akhir. Simpan kata sandi itu untuk langkah selanjutnya
Menjalankan ini untuk menetapkan kata sandi saya sendiri.
Kedua
dan
sekarang bekerja. Semoga ini membantu. Sekitar 3 jam coba-coba.
sumber
Jenis Pertama ini-:
Lalu ini -:
sumber
Saya telah menghabiskan banyak waktu melakukan ini saya ingin meletakkan aplikasi Django saya di server saya dan ketika saya menjalankan
python manage.py migrate
saya bertemu pertanyaan iniDan!! Saya mengatur ini
ln -s /var/run/mysqld/mysqld.sock /tmp/mysql.sock
akhirnya berhasil!sumber
Ketik terminal sebagai berikut:
sumber
Berhenti dan memulai server mysql dari terminal menyelesaikan masalah saya. Di bawah ini adalah cmds untuk berhenti dan memulai server mysql di MacOs.
Catatan: Restart layanan dari preferensi Sistem Mac tidak menyelesaikan masalah di mac saya. Jadi cobalah untuk memulai kembali dari terminal.
sumber
Jika Anda menjalankan pada macOS, lebih mudah untuk pertama-tama memeriksa pergi ke 'System Preferences' dan lihat apakah MySQL berjalan atau tidak.
sumber
Untuk CentOS, file untuk init mysql ada di sini:
sumber