[mysql] MySQL이 실행중인 포트와 연결 가능한지 여부를 테스트하는 방법은 무엇입니까?

MySQL을 설치했으며 사용자로 로그인했습니다.

그러나 다음과 같이 연결하려고하면 :

http://localhost:3306
mysql://localhost:3306

둘 다 작동하지 않습니다. 둘 다 작동하는지 확실하지 않지만 적어도 하나는 :)해야합니다.

포트가 실제로 3306인지 어떻게 확인할 수 있습니까? 어떻게 든 리눅스 명령이 있습니까? 또한 URL을 통해 시도하는 더 정확한 방법이 있습니까?



답변

포트에서 리스너를 찾으려면 다음과 같이하십시오.

netstat -tln

mysql이 실제로 해당 포트에서 수신 대기하는 경우 다음과 같은 행이 표시되어야합니다.

tcp        0      0 127.0.0.1:3306              0.0.0.0:*                   LISTEN      

포트 3306은 MySql의 기본 포트입니다.

연결하려면 기본 mysql 클라이언트와 같이 필요한 클라이언트를 사용해야합니다.

mysql -h localhost -u 사용자 데이터베이스

또는 라이브러리 코드로 해석되는 URL입니다.


답변

MySQL 클라이언트 사용 :

mysql> SHOW GLOBAL VARIABLES LIKE 'PORT';


답변

grep port /etc/mysql/my.cnf (적어도 debian / ubuntu works)

또는

netstat -tlpn | grep mysql

확인

바인드 주소 127.0.0.1

가능한 제한 사항을 보려면 /etc/mysql/my.cnf


답변

netstat -tlpn

다음과 같은 목록이 표시됩니다.

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:22              0.0.0.0:*               LISTEN      1393/sshd
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      1859/master
tcp        0      0 123.189.192.64:7654     0.0.0.0:*               LISTEN      2463/monit
tcp        0      0 127.0.0.1:24135         0.0.0.0:*               LISTEN      21450/memcached
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN      16781/mysqld

모든 세부 사항에 대해 루트로 사용하십시오. 이 -t옵션은 출력을 TCP 연결로 제한합니다. -l수신 포트의 -p경우 프로그램 이름과-n 이 지정된 버전 대신 포트의 숫자 버전을 표시합니다.

이런 식으로 프로세스 이름과 포트를 볼 수 있습니다.


답변

-e( --execute) 옵션 만 사용하십시오 :

$ mysql -u root -proot -e "SHOW GLOBAL VARIABLES LIKE 'PORT';"                                                                                                       (8s 26ms)
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| port          | 3306  |
+---------------+-------+

root“사용자 이름”과 “암호”로 교체


답변

두 URL이 모두 올바르지 않습니다.

jdbc:mysql://host:port/database

나는 그것이 말할 것도 없다고 생각했지만 Java로 데이터베이스에 연결하려면 JDBC 드라이버가 필요합니다. MySQL JDBC 드라이버 가 필요합니다 .

TCP / IP를 통한 소켓을 사용하여 연결할 수 있습니다. MySQL 문서를 확인하십시오 .

http://dev.mysql.com/doc/refman/5.0/en/connector-j-reference-configuration-properties.html을 참조 하십시오.

최신 정보:

MySQL ( telnet ip 3306) 에 텔넷을 시도했지만 작동하지 않습니다.

http://lists.mysql.com/win32/253

나는 이것이 당신이 생각한 것이라고 생각합니다.


답변

일부에 대한 간단한 접근 방식 : MySQL이 특정 포트에 있는지 확인하려면 터미널에서 다음 명령을 사용할 수 있습니다. Mac에서 테스트되었습니다. 기본 포트는 3306입니다.

mysql --host=127.0.0.1 --port=3306

MySQL 셸 터미널에 성공적으로 로그인하면 좋습니다! 이것이 성공적인 로그인 결과입니다.

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 9559
Server version: 5.6.21 Homebrew

Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>