Saya mendapatkan error berikut ketika mencoba untuk terhubung ke mysql:
Dapat't terhubung ke server MySQL lokal melalui soket '/var/lib/mysql/mysql.kaus kaki' (2)
Apakah ada solusi untuk kesalahan ini? Apa yang mungkin menjadi alasan di balik itu?
Apakah anda menghubungkan ke "localhost" atau "127.0.0.1" ? Saya melihat bahwa ketika anda terhubung ke "localhost" soket konektor yang digunakan, tetapi ketika anda terhubung ke "127.0.0.1" TCP/IP konektor yang digunakan. Anda bisa mencoba menggunakan "127.0.0.1" jika soket konektor tidak aktif/bekerja.
Memastikan bahwa mysql anda menjalankan layanan
service mysqld start
Kemudian, cobalah salah satu dari yang berikut berikut:
(jika anda belum menetapkan password untuk mysql)
mysql -u root
jika anda telah menetapkan password sudah
mysql -u root -p
Jika file anda saya.cnf (biasanya di folder dll) adalah dikonfigurasi dengan benar dengan
socket=/var/lib/mysql/mysql.sock
anda dapat memeriksa apakah mysql sudah berjalan dengan perintah berikut:
mysqladmin -u root -p status
cobalah mengubah permission untuk folder mysql. Jika anda bekerja secara lokal, anda dapat mencoba:
sudo chmod -R 777 /var/lib/mysql/
bahwa soal itu bagi saya
Kemungkinan besar mysql.sock
tidak ada di /var/lib/mysql/
.
Jika anda menemukan file yang sama di lokasi lain maka symlink ini:
Untuk ex: aku punya /data/mysql_datadir/mysql.sock
Switch user untuk mysql dan melaksanakan seperti yang disebutkan di bawah ini:
su mysql
ln -s /data/mysql_datadir/mysql.sock /var/lib/mysql/mysql.sock
Yang memecahkan masalah saya
Jika anda berada di sebuah baru-baru ini RHEL, anda mungkin perlu untuk memulai mariadb (open source mysql db) bukan db mysql:
yum remove mysql
yum -y install mariadb-server mariadb
service mariadb start
Maka anda harus dapat untuk mengakses mysql di mode biasa:
mysql -u root -p
Dalam kasus saya saya telah pindah socket file ke lokasi lain di dalam /etc/my.cnf
dari /var/lib/mysql/mysql.kaus kaki
ke /tmp/mysql.sock
Bahkan setelah restart mysqld layanan, saya masih melihat pesan kesalahan ketika saya mencoba untuk terhubung.
ERROR 2002 (HY000): Bisa't terhubung ke server MySQL lokal melalui soket '/var/lib/mysql/mysql.kaus kaki' (2)
Masalah ini dengan cara yang klien dikonfigurasi. Menjalankan diagnostik akan benar-benar menunjukkan yang benar socket jalan. misalnya ps aux | grep mysqld
Karya:
mysql -uroot -p -h127.0.0.1
mysql -uroot -p --socket=/tmp/mysql.sock
Tidak Bekerja:
mysql -uroot -p
mysql -uroot -p -hlocalhost
Anda dapat fix masalah ini dengan menambahkan yang sama socket baris bawah [klien]
bagian dalam mysql config.
Hanya mengedit /etc/my.cnf
Tambahkan baris berikut ke saya.cnf
[mysqld]
socket=/var/lib/mysql/mysql.sock
[client]
socket=/var/lib/mysql/mysql.sock
Restart mysql dan connect lagi
mysql -u user-p password database -h host;
Periksa jika anda mysqld layanan ini berjalan atau tidak, jika tidak dijalankan, memulai layanan.
Jika masalah anda isn't diselesaikan, mencari /etc/my.cnf
dan memodifikasi sebagai berikut, di mana anda melihat baris yang dimulai dengan socket
. Mengambil cadangan dari file tersebut sebelum melakukan update ini.
socket=/var/lib/mysql/mysql.sock
Perubahan
socket=/opt/lampp/var/mysql/mysql.sock -u root
Pastikan anda memiliki cukup ruang yang tersisa di /var
. Jika Mysql setan tidak mampu menulis info tambahan ke drive server mysql tidak't mulai dan itu mengarah ke kesalahan Dapat't terhubung ke server MySQL lokal melalui soket '/var/lib/mysql/mysql.kaus kaki' (2)
Pertimbangkan untuk menggunakan
expire_logs_days = 10
max_binlog_size = 100M
Ini akan membantu anda menjaga penggunaan disk ke bawah.
MariaDB, yang dikembangkan masyarakat fork dari MySQL, telah menjadi standar pelaksanaan MySQL di banyak distro.
Jadi, pertama anda harus mulai,
$ sudo systemctl start mariadb
Jika ini gagal bukan mencoba,
$ sudo systemctl start mysqld
Kemudian untuk memulai mysql,
$ mysql -u root -p
Seperti hari ini, di Fedora paket bernama mariadb
Dan di Ubuntu itu disebut mariadb-server
.
Jadi anda mungkin harus menginstal ini jika belum terinstal di sistem anda.
jika anda mengubah file-file di /var/lib/mysql [ seperti menyalin atau mengganti yang ], anda harus mengatur pemilik dari berkas ke mysql ini sangat penting jika mariadb.restart layanan telah faild ditulis
chown -R mysql:mysql /var/lib/mysql/*
chmod -R 700 /var/lib/mysql/*
Jika mysql anda sebelumnya bekerja dan berhenti tiba-tiba saja "reboot" server.
Menghadapi masalah ini pada CentOS VPS.->
Terus-menerus mendapatkan
Dapat't terhubung ke server MySQL lokal melalui soket '/var/lib/mysql/mysql.kaus kaki'(2)
Mencoba semua teknik, akhirnya restart server tetap masalah ->
shutdown -r now
Harap ini membantu !!
Pastikan anda telah menginstal MySQL server dengan benar, saya bertemu dengan kesalahan berkali-kali dan saya pikir itu's rumit untuk men-debug dari soket, maksud saya mungkin akan lebih mudah untuk menginstal ulang itu.
Jika anda menggunakan CentOS 7, berikut adalah cara yang benar untuk menginstalnya:
Pertama-tama, tambahkan mysql masyarakat sumber
yum install http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
Maka anda dapat menginstalnya dengan yum install mysql-komunitas-server
Mulai dengan systemctl: systemctl start mysqld
Dalam kasus saya, saya masih mengimpor database baru, dan saya tidak dapat terhubung lagi setelah itu. Akhirnya saya menyadari itu adalah masalah ruang.
Jadi, anda dapat menghapus yang terakhir database dan memperluas hard drive anda atau apa yang saya lakukan, dipulihkan snapshot dari virtual machine.
Hanya dalam kasus seseorang berpikir bahwa adalah berguna