MySQL은 현재 연결 정보를 표시합니다.


124

MySQL 터미널 세션에 있지만 어떤 서버에 연결되어 있는지 또는 어떤 데이터베이스에 연결되어 있는지 모르겠습니다.

현재 사용중인 호스트, 포트, 사용자 이름 및 데이터베이스를 알려주는 MySQL 명령이 있습니까?


6
포트는 " 'port'와 같은 변수 표시"를 사용하여 선택할 수 있습니다.
martin clayton

2
당신은 현재 데이터베이스의 정보를 얻기 위해 "\ s"를 입력 할 것입니다 a
Shivam dec

mysql cli가 mariadb처럼 항상 현재 db-name을 표시 할 수 있습니까?MySQL [sys]>
roamer

답변:


187

사용할 수있는 MYSQL 함수가 있습니다. 사용자를 해결하는 다음과 같이 :

SELECT USER();

이것은 다음과 같은 것을 반환합니다. root@localhost 호스트와 사용자를 얻도록 .

현재 데이터베이스를 가져 오려면 다음 명령문을 실행하십시오.

SELECT DATABASE();

다른 유용한 기능은 여기에서 찾을 수 있습니다 : http://dev.mysql.com/doc/refman/5.0/en/information-functions.html


137

MySQL 클라이언트에서 status 명령을 사용할 수 있습니다 .

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>

PHP를 통해 MySQL 쿼리에서이 데이터를 출력 할 수 있습니까?
Martin

이 명령을 실행하는 데 어떤 버전을 사용하고 있습니까? mysql 클라이언트와 mysqladmin 프로그램 사이에서 혼란스러워하고 있다고 생각합니다. mysqladmin -u root -p status 이것은 내 출력입니다. 가동 시간 : 79625 스레드 : 3 질문 : 9903 느린 쿼리 : 1 열기 : 106 플러시 테이블 : 1 열린 테이블 : 99 초당 쿼리 평균 : 0.124 데이터베이스의 정보를 표시하지 않습니다. 연결되고 있습니다.
Tung

navicat의 cmd 에서이 명령을 실행하면 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 1오류가 발생했습니다. 하지만 mysql 클라이언트에서 실행하면 괜찮 았습니다.
Donghua Liu

43

Mysql 이 실행 되는 로컬 호스트포트 번호 를 알고 싶다면 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)

MySQL이 실행중인 포트 번호를 제공합니다.


Mysql호스트 이름 을 알고 싶다면 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)

mysql의 호스트 이름을 제공합니다.


Mysql사용자 이름 을 알고 싶다면 MySQL 명령 줄 클라이언트에서이 쿼리를 사용할 수 있습니다.

select user();   


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

mysql의 사용자 이름을 제공합니다.


또는 Yousui의 대답을 사용할 수 있습니다 mysql> status.이 모든 것을 단일 명령으로 반환합니다.
부호화기

1
Yousui의 대답에는 호스트 이름이 포함되어 있지 않습니다. 또한 전체 목록이 아닌 지정된 값 중 하나만 반환하려는 경우 이러한 명령이 매우 유용합니다.
raphael75
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.