Perintah ini membantu untuk mengetahui semua variabel global. mysql> TAMPILKAN VARIABEL GLOBAL;
Arun211
38
Cara terbaik untuk benar-benar mengetahui aplikasi apa yang mendengarkan antarmuka mana dan pada port apa yang akan digunakannetstat
Anda dapat melakukan ini sebagai root :
netstat -tlnp
Ini akan mencantumkan semua layanan mendengarkan seperti ini:
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 25934/mysqld
tcp6 0 0 :::22 :::* LISTEN 7964/dropbear
Kolom terakhir menunjukkan kepada Anda bahwa mysqld terikat sendiri ke port 3306 mendengarkan pada semua antarmuka.
Bahkan, ini bekerja untuk semuanya, bukan hanya mysql. Anda juga dapat menggunakannya bukan soket TCP.
Jika Anda benar-benar ingin mengonfirmasi bahwa itu berjalan di port Anda dapat telnet ke port saat prosesnya naik seperti ini:
telnet localhost 3306
Anda akan melihatnya melaporkan bahwa Anda terhubung ke mySQL.
Secara alternatif, Anda dapat menemukan PID proses menggunakan ps dan grep:
ps -ef | grep mysql
dan kemudian masukkan pid itu ke lsof untuk mencetak semua deskriptor file yang terbuka. Anda akan menemukan port yang terikat pada proses di dekat bagian atas.
Jawaban:
aku melakukannya
Dan itu menunjukkan bahwa saya menggunakan
port 3306
dan pencarian saya untuk kesalahan berlanjut.sumber
Cara terbaik untuk benar-benar mengetahui aplikasi apa yang mendengarkan antarmuka mana dan pada port apa yang akan digunakan
netstat
Anda dapat melakukan ini sebagai root :
Ini akan mencantumkan semua layanan mendengarkan seperti ini:
Kolom terakhir menunjukkan kepada Anda bahwa mysqld terikat sendiri ke port 3306 mendengarkan pada semua antarmuka.
Bahkan, ini bekerja untuk semuanya, bukan hanya mysql. Anda juga dapat menggunakannya bukan soket TCP.
sumber
lsof -i TCP
itu.Masukkan via terminal ke mysql:
mysql -u root
dan kemudian ketik berikut ini di prompt mysql:
mysql> SHOW GLOBAL VARIABLES LIKE 'PORT';
Ini berhasil untuk saya.
sumber
MySQL default ke port 3306 kecuali jika Anda menentukan baris lain di
/etc/my.cnf
file konfigurasi.Kecuali jika Anda
/etc/my.cnf
mengandung sesuatu sepertiMaka sangat mungkin Anda menggunakan port default.
sumber
Jika Anda benar-benar ingin mengonfirmasi bahwa itu berjalan di port Anda dapat telnet ke port saat prosesnya naik seperti ini:
Anda akan melihatnya melaporkan bahwa Anda terhubung ke mySQL.
Secara alternatif, Anda dapat menemukan PID proses menggunakan ps dan grep:
dan kemudian masukkan pid itu ke lsof untuk mencetak semua deskriptor file yang terbuka. Anda akan menemukan port yang terikat pada proses di dekat bagian atas.
sumber
Metode alternatif untuk yang sudah terdaftar (dan tidak sebagus tapi hei, itu berhasil).
Saluran uid 27 adalah soket mendengarkan proses mysqld, dan 0CEA adalah hex untuk 3306.
sumber
Ok, ini berfungsi pada kotak linux saya, tapi saya tidak yakin Unix akan menyimpan file cnf di tempat yang sama.
cat /etc/mysql/my.cnf | grep 'port'
sumber
Anda dapat mencoba mengekor log mysql .... coba jalankan
saat me-restart mysql oleh
di terminal / tab ssh lainnya. Port tempat mendengarkannya akan ditampilkan dalam log sebagai berikut:
sumber
perintah di atas tidak membantu saya di mac saya.
Saya dulu
lsof -i TCP:3306
mencari tahu proses mysqld. yang sebenarnya mendengarkan ke * .mysqlsumber
sudo lsof -i :3306
.