Сегодня с утра попытался поднять одну MySQL базку у себя на домашнем компе (Zenwalk Linux 5.0), все шло гладко до тех пор, пока не пришла очередь коннектиться при помощи mysql-connector - из Java. MySQL Admin работает, а из Java вылазит вот такая фраза:
An error occured while establishing the connection. Type: com.mysql.jdbc.CommunicationsException Error Code: 0 SQL State: 08S01 Message: Communications link failure due to underlying exception: ** BEGIN NESTED EXCEPTION ** java.net.ConnectException MESSAGE: Connection refused STACKTRACE: java.net.ConnectException: Connection refused at java.net.PlainSocketImpl.socketConnect(Native Method) at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333) at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195) at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182) at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366) at java.net.Socket.connect(Socket.java:519) at java.net.Socket.connect(Socket.java:469) at java.net.Socket.<init>(Socket.java:366) at java.net.Socket.<init>(Socket.java:208) at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:256) at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:271) at com.mysql.jdbc.Connection.createNewIO(Connection.java:2744) at com.mysql.jdbc.Connection.<init>(Connection.java:1553) at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:285) at java.sql.DriverManager.getConnection(DriverManager.java:582) at java.sql.DriverManager.getConnection(DriverManager.java:154) at com.onseven.dbvis.wrapper.DriverManagerImpl.getConnection(Unknown Source) at com.onseven.dbvis.sql.N.İ(Unknown Source) at com.onseven.dbvis.sql.N.access$200(Unknown Source) at com.onseven.dbvis.sql.N$A.execute(Unknown Source) at se.pureit.util.ThreadCommand.runExecute(ThreadCommand.java:163) at se.pureit.util.ThreadCommand.run(ThreadCommand.java:143) at java.lang.Thread.run(Thread.java:619) ** END NESTED EXCEPTION ** Last packet sent to the server was 1 ms ago.
Начал копать, оказалось, по умолчанию установка MySQL закрыта для коннектов TCP/IP (через которые Java и коннектится к серверу), чтобы это дело включить, нужно в /etc/my.cnf закоментировать строчку
skip-networking
И все заработало.
