MySQL mostra le informazioni di connessione correnti


124

Sono in una sessione terminale MySQL ma non so a quale server sono connesso o a quale database sono connesso.

Esiste un comando MySQL che mi dirà l'host, la porta, il nome utente e il database che sto usando ora?


6
Il porto può essere raccolto usando "mostra variabili come 'port'"
martin clayton

2
digiterai "\ s" per ottenere le informazioni del database corrente a
Shivam

mysql cli può mostrare sempre il nome db attuale proprio come mariadbMySQL [sys]>
roamer il

Risposte:



137

È possibile utilizzare il comando status nel client MySQL.

mysql> status;
--------------
mysql  Ver 14.14 Distrib 5.5.8, for Win32 (x86)

Connection id:          1
Current database:       test
Current user:           ODBC@localhost
SSL:                    Not in use
Using delimiter:        ;
Server version:         5.5.8 MySQL Community Server (GPL)
Protocol version:       10
Connection:             localhost via TCP/IP
Server characterset:    latin1
Db     characterset:    latin1
Client characterset:    gbk
Conn.  characterset:    gbk
TCP port:               3306
Uptime:                 7 min 16 sec

Threads: 1  Questions: 21  Slow queries: 0  Opens: 33  Flush tables: 1  Open tables: 26  Queries per second avg: 0.48
--------------

mysql>

è possibile generare questi dati da una query MySQL tramite PHP?
Martin,

Quale versione stai usando per eseguire questo comando? Penso che tu sia confuso tra client mysql e programma mysqladmin. mysqladmin -u root -p status Questo è il mio output: Uptime: 79625 Discussioni: 3 Domande: 9903 Query lente: 1 Apre: 106 Tabelle flush: 1 Tabelle aperte: 99 Query al secondo media: 0,124 Non mostra le informazioni del database essere collegato anche.
Tung,

Se avessi eseguito questo comando su cmd di navicat, mi avrebbe dato un 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'status' at line 1errore. Ma se lo eseguo sul client mysql, era ok.
Donghua Liu,

43

Se vuoi conoscere il numero di porta del tuo host locale su cui è in esecuzione Mysql , puoi utilizzare questa query sul client della riga di comando di MySQL -

SHOW VARIABLES WHERE Variable_name = 'port';


mysql> SHOW VARIABLES WHERE Variable_name = 'port';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| port          | 3306  |
+---------------+-------+
1 row in set (0.00 sec)

Ti fornirà il numero di porta su cui è in esecuzione MySQL.


Se vuoi conoscere il nome host del tuo Mysql puoi usare questa query sul client della riga di comando di MySQL -

SHOW VARIABLES WHERE Variable_name = 'hostname';


mysql> SHOW VARIABLES WHERE Variable_name = 'hostname';
+-------------------+-------+
| Variable_name     | Value |
+-------------------+-------+
| hostname          | Dell  |
+-------------------+-------+
1 row in set (0.00 sec)

Ti darà il nome host per mysql.


Se vuoi conoscere il nome utente di Mysql , puoi utilizzare questa query sul client della riga di comando di MySQL -

select user();   


mysql> select user();
+----------------+
| user()         |
+----------------+
| root@localhost |
+----------------+
1 row in set (0.00 sec)

Ti darà il nome utente per mysql.


Oppure potresti usare la risposta di Yousui mysql> status, che restituisce tutto questo in un solo comando.
un programmatore il

1
La risposta di Yousui non include il nome host. Inoltre, se si desidera restituire solo uno dei valori specificati e non l'intero elenco, questi comandi sono molto utili.
raphael75,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.