Я установил MySQL и даже вошел в систему как пользователь.
Но когда я пытаюсь подключиться вот так:
http://localhost:3306
mysql://localhost:3306
Ни то, ни другое не работает. Не уверен, что оба должны работать, но хотя бы один из них должен :)
Как я могу убедиться, что это действительно порт 3306? Есть ли команда linux, чтобы как-нибудь это увидеть? Кроме того, есть ли более правильный способ попробовать это через URL-адрес?
-p
параметр. Добавление процесса (ов) действительно помогает сделать эту информацию более полезной.man netstat
.Используя клиент Mysql:
mysql> SHOW GLOBAL VARIABLES LIKE 'PORT';
источник
grep port /etc/mysql/my.cnf
(по крайней мере, в debian / ubuntu работает)или
проверить
в /etc/mysql/my.cnf, чтобы увидеть возможные ограничения
источник
Он покажет список примерно так:
Используйте как root для всех деталей. Эта
-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-адреса неверны - должно быть
Я думал, что это само собой разумеется, но для подключения к базе данных с помощью 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
) по telnet , но ничего не вышло: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>
источник
3306 - порт по умолчанию для mysql. Проверьте это с помощью:
он должен дать такой результат:
tcp 0 0 127.0.0.1:3306 0.0.0.0:* СЛУШАТЬ
источник
ты можешь использовать
источник
Для меня ответ @joseluisq дал:
Но это сработало так:
$ mysql -u root@localhost -e "SHOW GLOBAL VARIABLES LIKE 'PORT';" +---------------+-------+ | Variable_name | Value | +---------------+-------+ | port | 3306 | +---------------+-------+
источник
В Mac OS X есть два варианта.
netstat
илиlsof
Использование
netstat
не будет отображать процесс в Mac OS X. поэтому с помощью netstat вы можете выполнять поиск только по порту.Использование
lsof
покажет имя процесса.Я сделал следующее, когда столкнулся с конфликтами портов (контейнеры докеров):
netstat -aln | grep 3306
Выходы:
tcp46 0 0 *.3306 *.* LISTEN
sudo lsof -i -P | grep -i "LISTEN" | grep -i 3306
Выходы:
mysqld 60608 _mysql 31u IPv6 0x2ebc4b8d88d9ec6b 0t0 TCP *:3306 (LISTEN)
источник
Если вы находитесь в системе,
netstat
которая недоступна (например, RHEL 7 и более поздние выпуски Debian), вы можете использоватьss
, как показано ниже:На выходе вы получите что-то вроде следующего:
Четвертый столбец -
Local Address:Port
. Итак, в этом случае Mysql прослушивает порт 3306 по умолчанию.источник
Я согласен с решением @bortunac. my.conf специфичен для mysql, а netstat предоставит вам все прослушиваемые порты.
Возможно, используйте оба: один для подтверждения того, какой порт установлен для mysql, а другой - для проверки того, что система прослушивает этот порт.
Мой клиент использует CentOS 6.6, и я нашел файл my.conf в / etc /, поэтому использовал:
grep port /etc/my.conf
(CentOS 6.6)источник