Страница 1 из 2

Проблемма с доступом к mysql с помощью jdbc

Добавлено: 18 янв 2008, 04:53
vi.ki.ng
Проблема вот в чем. Пытаюсь получить доступ к базе:

Код: Выделить всё

Class.forName("org.gjt.mm.mysql.Driver").newInstance();
Connection con = DriverManager.getConnection("jdbc:mysql://localhost/mysql","root","");
мускл запущен. схема существует. на что каждый раз вылетает следующий эксепшен.

Код: Выделить всё

com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception: 

** BEGIN NESTED EXCEPTION ** 

java.net.SocketException
MESSAGE: java.security.AccessControlException: access denied (java.net.SocketPermission 127.0.0.1:3306 connect,resolve)

STACKTRACE:

java.net.SocketException: java.security.AccessControlException: access denied (java.net.SocketPermission 127.0.0.1:3306 connect,resolve)
	at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:156)
	at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:277)
и так далее...
Есть подозрение, что надо как-то прописать политики безопасности явы. но вот как и где? Курение мануалов делу не помогло :(

Добавлено: 18 янв 2008, 11:02
Llama
vi.ki.ng, вы _из_чего_ пытаетесь получить доступ к БД? Надеюсь это не апплет?

Добавлено: 18 янв 2008, 12:12
X-Stranger
Проверьте настройки прав доступа к БД.

А если вы в Убунте, то это скорее всего не пускает apparmor. Нужно запустить sudo aa-logprof

Добавлено: 18 янв 2008, 14:31
leave
А если это РХЕЛ, то вполне может быть selinux.

Добавлено: 18 янв 2008, 16:34
Silos
Нет, это Дебиан етч.

Добавлено: 18 янв 2008, 18:09
vi.ki.ng
Llama, это сервлет.
Silos Прав. У мя этч.

Добавлено: 18 янв 2008, 23:24
Berserker
vi.ki.ng,

Правер каб у mysql быў grant на user@127.0.0.1 . Гэта не тое ж, што user@localhost. Бо першае праз tcp/ip , другое праз UNIX-socket.

Добавлено: 19 янв 2008, 01:14
vi.ki.ng
Сделал так:

mysql> GRANT ALL PRIVILEGES ON *.* TO user@127.0.0.1;

Эффект тот же (
Да и первоначально я под рутом конектился, а ведь у него все права и на localhost и на 127.0.0.1 (проверено :))

Добавлено: 19 янв 2008, 11:22
Llama
Berserker писал(а):vi.ki.ng,

Правер каб у mysql быў grant на user@127.0.0.1 . Гэта не тое ж, што user@localhost. Бо першае праз tcp/ip , другое праз UNIX-socket.
Лухта. праблема відавочна ў абмежаваннях па бяспецы серввлетнага кантэнера які не дазваляе рабіць так як тут робіцца. Хіба проста наладзіць датацорсы - чамусці ўсе вядомыя мне праграмеры рабілі менавіта так...

Добавлено: 20 янв 2008, 00:49
vi.ki.ng
Llama, Aleksey Kondratenko, не могли бы вы дать каки-нить конкретные советы по исправлению ошибки? Или быть может линку на чтиво?

Добавлено: 20 янв 2008, 10:40
Llama
Скажи хоть какой контейнер используешь и какую жабу.
Тут читал?
http://forums.mysql.com/read.php?39,4582,4582#msg-4582

Добавлено: 21 янв 2008, 04:15
vi.ki.ng
Жаба пятая. J2EE.
Коннектор mysql-connector-java-5.0.4
Линка не помогла (

зы. под окнами всё работает.

Добавлено: 21 янв 2008, 16:08
Llama
vi.ki.ng, а контейней какой, а?

Добавлено: 21 янв 2008, 17:07
leave
Что-то мне подсказывает, что томкат. Ну или JBoss.

Добавлено: 21 янв 2008, 19:38
vi.ki.ng
томкат пятый... мне вот кажется, что надо явовские политики прописывать.
Прописывал в java.policy гранты. ноль эффекта (