MySQL zeigt aktuelle Verbindungsinformationen an


124

Ich bin in einer MySQL-Terminalsitzung, weiß aber nicht, mit welchem ​​Server ich verbunden bin oder mit welcher Datenbank ich verbunden bin.

Gibt es einen MySQL-Befehl, der mir den Host, den Port sowie den Benutzernamen und die Datenbank mitteilt, die ich gerade verwende?


6
Port kann mit "show Variablen wie 'Port'" abgeholt werden
— Martin Clayton

2
Sie werden "\ s"
— eingeben

kann mysql cli immer den aktuellen db-name anzeigen wie mariadbMySQL [sys]>
— roamer

Antworten:


186

Es gibt MYSQL-Funktionen, die Sie verwenden können. Wie dieser, der den Benutzer auflöst:

SELECT USER();

Dies gibt so etwas wie zurück, root@localhostso dass Sie den Host und den Benutzer erhalten.

Führen Sie die folgende Anweisung aus, um die aktuelle Datenbank abzurufen:

SELECT DATABASE();

Weitere nützliche Funktionen finden Sie hier: http://dev.mysql.com/doc/refman/5.0/en/information-functions.html


137

Sie können den Befehl status im MySQL-Client verwenden.

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>

Ist es möglich, diese Daten aus einer MySQL-Abfrage über PHP auszugeben?
— Martin

Mit welcher Version führen Sie diesen Befehl aus? Ich denke, Sie werden zwischen dem MySQL-Client und dem MySQL-Programm verwirrt. mysqladmin -u root -p status Dies ist meine Ausgabe: Uptime: 79625 Threads: 3 Fragen: 9903 Langsame Abfragen: 1 Öffnet: 106 Tabellen spülen: 1 Tabellen öffnen: 99 Abfragen pro Sekunde Durchschnitt: 0,124 Die Informationen der Datenbank werden nicht angezeigt auch verbunden sein.
— Tung

Wenn ich diesen Befehl auf cmd von navicat ausführte, gab es mir einen 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 1Fehler. Aber wenn ich es auf einem MySQL-Client laufen lasse, war es in Ordnung.
— Donghua Liu

43

Wenn Sie die Portnummer Ihres lokalen Hosts wissen möchten, auf dem MySQL ausgeführt wird, können Sie diese Abfrage auf dem MySQL-Befehlszeilenclient verwenden.

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)

Sie erhalten die Portnummer, auf der MySQL ausgeführt wird.


Wenn Sie den Hostnamen Ihres MySQL wissen möchten , können Sie diese Abfrage auf dem MySQL-Befehlszeilenclient verwenden -

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)

Es gibt Ihnen den Hostnamen für MySQL.


Wenn Sie den Benutzernamen Ihres MySQL wissen möchten , können Sie diese Abfrage auf dem MySQL-Befehlszeilenclient verwenden -

select user();   


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

Es gibt Ihnen den Benutzernamen für MySQL.


Oder Sie könnten Yousuis Antwort von verwenden mysql> status, die all dies in einem einzigen Befehl zurückgibt.
— ein Kodierer

1
Yousuis Antwort enthält nicht den Hostnamen. Wenn Sie nur einen der angegebenen Werte und nicht die gesamte Liste zurückgeben möchten, sind diese Befehle sehr nützlich.
— Raphael75
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.