83 votes

Comment vérifier sur quel port MySQL tourne

Sur ma machine de développement Windows, mysql fonctionne sur le port 3306

Comment puis-je vérifier sur quel port il fonctionne sur le serveur Unix sur lequel je dois télécharger l'application.

0 votes

Cela dépend de la manière dont vous pouvez accéder au serveur. Avez-vous un accès ssh, un accès client mysql ou une interface web comme phpMyAdmin?

0 votes

Accès SSH - via Putty

0 votes

S'agit-il d'un serveur partagé? Si c'est le cas, il peut y avoir plusieurs instances de MySQL s'exécutant dessus, chacune sur un port différent.

3voto

ColinYounger Points 2941

Une méthode alternative à celles déjà répertoriées (et pas aussi bonne mais bon, ça fonctionne).

prompt>lsof -n | grep 'mysql.*TCP'
mysqld     1564     mysql   10u     IPv4            3246456       0t0        TCP *:mysql (LISTEN)
prompt>cat /proc/1564/net/tcp
  sl  local_address rem_address   st tx_queue rx_queue tr tm->when retrnsmt   uid  timeout inode
   0: 11AC11AC:0035 00000000:0000 0A 00000000:00000000 00:00000000 00000000     0        0 14299 1 ffff88012a429a00 299 0 0 2 -1
   1: 017AA8C0:0035 00000000:0000 0A 00000000:00000000 00:00000000 00000000     0        0 13871 1 ffff880129962080 299 0 0 2 -1
   2: 00000000:0016 00000000:0000 0A 00000000:00000000 00:00000000 00000000     0        0 12596 1 ffff880129960000 299 0 0 2 -1
   3: 0100007F:0277 00000000:0000 0A 00000000:00000000 00:00000000 00000000     0        0 11459 1 ffff88012a429380 299 0 0 2 -1
   4: 00000000:8D58 00000000:0000 0A 00000000:00000000 00:00000000 00000000     0        0 11315 1 ffff88012a428d00 299 0 0 2 -1
   5: 00000000:0019 00000000:0000 0A 00000000:00000000 00:00000000 00000000     0        0 12940 1 ffff880129960680 299 0 0 2 -1
   6: 0100007F:177A 00000000:0000 0A 00000000:00000000 00:00000000 00000000   500        0 3600557 1 ffff8800672dee80 299 0 0 2 -1
   7: 0100007F:177B 00000000:0000 0A 00000000:00000000 00:00000000 00000000   500        0 3603871 1 ffff88012a42ee80 299 0 0 2 -1
   8: 0100007F:177C 00000000:0000 0A 00000000:00000000 00:00000000 00000000     0        0 3608169 1 ffff88012a42f500 299 0 0 2 -1
   9: 0100007F:177D 00000000:0000 0A 00000000:00000000 00:00000000 00000000   500        0 3615687 1 ffff88012a42e180 299 0 0 2 -1
  10: 0100007F:00C7 00000000:0000 0A 00000000:00000000 00:00000000 00000000     0        0 3608454 1 ffff8800672db400 299 0 0 2 -1
  11: 00000000:0CEA 00000000:0000 0A 00000000:00000000 00:00000000 00000000    27        0 3246456 1 ffff8800672dba80 299 0 0 2 -1
  12: 00000000:024B 00000000:0000 0A 00000000:00000000 00:00000000 00000000     0        0 12944 1 ffff880129961380 299 0 0 2 -1
  13: 00000000:006F 00000000:0000 0A 00000000:00000000 00:00000000 00000000     0        0 10657 1 ffff88012a428680 299 0 0 2 -1
  14: 00000000:01D1 00000000:0000 0A 00000000:00000000 00:00000000 00000000     0        0 12942 1 ffff880129960d00 299 0 0 2 -1
  15: 0100007F:1DD2 00000000:0000 0A 00000000:00000000 00:00000000 00000000     0        0 3631325 1 ffff8800672da700 299 0 0 2 -1
  16: 0100007F:990B 0100007F:177B 01 00000000:00000000 02:0002F5D8 00000000   500        0 3610110 2 ffff8800672df500 20 3 26 4 19
  17: 0100007F:177B 0100007F:990C 01 000000

1voto

jonfhancock Points 236

D'accord, cela fonctionne sur ma boîte linux, mais je ne suis pas sûr qu'Unix stockera le fichier cnf au même endroit.

cat /etc/mysql/my.cnf | grep 'port'

0voto

Anshuman Banerjee Points 101

Vous pouvez essayer de suivre le journal mysql.... essayez d'exécuter

shell$> tail -f /var/log/mysql/mysqld.log

tout en redémarrant mysql en

service mysqld stop/start

sur un autre terminal/tab ssh. Le port sur lequel il écoute sera affiché dans le journal comme suit :

Version : '5.7.21-log'  socket : '/tmp/mysql.sock'  port : 3307  MySQL Community Server (GPL)

0voto

Zeming Wang Points 1

Si vous essayez ceci : $ grep port /etc/mysql/mysql.conf.d/mysqld.cnf

vous verrez le port que vous cherchez.

-2voto

Caiuby Freitas Points 11

Les commandes ci-dessus ne m'ont pas aidé sur mon mac.

J'ai utilisé lsof -i TCP:3306 pour trouver le processus mysqld, qui écoutait en fait sur *.mysql

1 votes

Cette commande peut vous donner le PID si le numéro de port est le 3306 par défaut. L'auteur original (OP) avait un numéro non par défaut.

0 votes

J'ai donné un exemple.. Vous pouvez remplacer 3306 par n'importe quel autre port. Dans ce cas, c'est 3307. La commande est correcte cependant.

1 votes

La manière correcte est d'utiliser: sudo lsof -i :3306.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X