Я не могу подключиться к базе данных mysql на своем «живом сервере», но он отлично работает на моем локальном компьютере.Не удалось создать соединение с сервером базы данных - соединитель java mysql
В моем главном классе я это делаю:
try {
main.connection.open();
} catch (SQLException e1) {
log.fatal(e1.getMessage());
System.exit(0);
}
И открытый метод выглядит следующим образом
public void open() throws SQLException{
if(con != null) close();
con = DriverManager.getConnection(url, user, password);
}
Через пару минут работы я получаю это:
14: 35: 47.434 [main] FATAL se.mypack.Server - Не удалось создать соединение с сервером базы данных. Попытка повторного подключения 3 раза. Сдаваться.
Как отладить это? Переменные URL, сервера и пароля верны. Что может быть проблемой здесь?
Использование MySQL-разъем-Java-5.1.29-bin.jar
проверить свои учетные данные еще раз. Вы должны быть на 100%, что они правы. Также выясните, есть ли у пользователя права доступа к этой базе данных - убедитесь, что вы используете команду «GRANT» для предоставления разрешений этому пользователю. –
Это было сделано. Подключение с теми же учетными данными в php-проектах. И у пользователя также есть разрешения для localhost, который является используемым мной сервером. Нужно ли устанавливать разрешения для локального IP-сервера серверов? например. 192.168.0.4 – daker
да, вам нужно будет сделать это в живой базе данных, если вы пытаетесь подключиться к вашей машине. вам нужно будет предоставить разрешения для внешнего ip вашего устройства (вы можете видеть, что если вы ssh в него - если это среда Linux) - см. это: http://stackoverflow.com/a/8348560/ 728610 –