Cette commande permet de connaître toutes les variables globales. mysql> MONTRE LES VARIABLES GLOBALES;
Arun211
38
La meilleure façon de savoir quelle application écoute quelle interface et quel port doit être utilisénetstat
Vous pouvez le faire en tant que root :
netstat -tlnp
Il listera tous les services d'écoute comme ceci:
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
La dernière colonne indique que mysqld est lié au port 3306 sur toutes les interfaces.
En fait, cela fonctionne pour tout, pas seulement pour MySQL. Vous pouvez également l'utiliser non sockets TCP.
Si vous voulez vraiment vérifier qu'il fonctionne sur le port, vous pouvez connecter telnet au port pendant que le processus est en marche, comme ceci:
telnet localhost 3306
Vous verrez qu'il indique que vous êtes connecté à MySQL.
De manière alternative, vous pouvez trouver le PID du processus en utilisant ps et grep:
ps -ef | grep mysql
puis mettez ce pid dans lsof pour imprimer tous les descripteurs de fichiers ouverts. Vous trouverez le port auquel le processus est lié vers le haut.
Cette commande peut vous donner un PID si le numéro de port est le port par défaut 3306. Le numéro de l'original (OP) était différent de celui par défaut.
Kubanczyk le
J'ai donné un exemple .. Vous pouvez remplacer 3306 par n'importe quel autre port. Dans ce cas, son 3307.Command est correct.
Réponses:
J'ai fait
Et cela indiquait que j'utilisais
port 3306
et que ma recherche de l'erreur se poursuit.la source
La meilleure façon de savoir quelle application écoute quelle interface et quel port doit être utilisé
netstat
Vous pouvez le faire en tant que root :
Il listera tous les services d'écoute comme ceci:
La dernière colonne indique que mysqld est lié au port 3306 sur toutes les interfaces.
En fait, cela fonctionne pour tout, pas seulement pour MySQL. Vous pouvez également l'utiliser non sockets TCP.
la source
lsof -i TCP
alors.Entrez via terminal to mysql:
mysql -u root
puis tapez ce qui suit dans l'invite mysql:
mysql> SHOW GLOBAL VARIABLES LIKE 'PORT';
Cela a fonctionné pour moi.
la source
MySQL utilise par défaut le port 3306 à moins que vous ne spécifiiez une autre ligne dans le
/etc/my.cnf
fichier de configuration.Sauf si votre
/etc/my.cnf
contient quelque chose commeIl est alors très probable que vous utilisiez le port par défaut.
la source
Si vous voulez vraiment vérifier qu'il fonctionne sur le port, vous pouvez connecter telnet au port pendant que le processus est en marche, comme ceci:
Vous verrez qu'il indique que vous êtes connecté à MySQL.
De manière alternative, vous pouvez trouver le PID du processus en utilisant ps et grep:
puis mettez ce pid dans lsof pour imprimer tous les descripteurs de fichiers ouverts. Vous trouverez le port auquel le processus est lié vers le haut.
la source
Une méthode alternative à celles déjà listées (et pas aussi bien mais bon, ça marche).
La ligne uid 27 est le socket d’écoute du processus mysqld et 0CEA est un hex pour 3306.
la source
Ok, cela fonctionne sur ma machine 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'
la source
vous pouvez essayer de suivre le journal mysql .... essayez de courir
lors du redémarrage de mysql par
sur un autre terminal / onglet ssh. Le port sur lequel son écoute sera affichée dans le journal comme suit:
la source
Les commandes ci-dessus ne m'ont pas aidé dans mon mac.
J'avais l'habitude
lsof -i TCP:3306
de découvrir le processus mysqld. qui écoutait réellement dans * .mysqlla source
sudo lsof -i :3306
.