Android и MySQL

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Android и MySQL

Сообщение Foenix » 09 сен 2013, 12:22

Isaev писал(а):да к mysql, просто у меня в драйвере прописано в манифесте, что
Main-Class: net.sourceforge.jtds.jdbc.Driver
и в services: net.sourceforge.jtds.jdbc.Driver

а в примере выше у mozilalvfg
в services: com.mysql.jdbc.Driver

вот и вся разница
да неправильно у тебя!
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Аватара пользователя
Isaev
Сообщения: 145
Зарегистрирован: 03 сен 2013, 09:39
Откуда: Германия
Контактная информация:

Re: Android и MySQL

Сообщение Isaev » 09 сен 2013, 13:13

c новой версией так же получаю

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

 try {
              Class.forName("com.mysql.jdbc.Driver").newInstance();
              log.info(">>> jdbc.Driver: instance successful");
            } catch (Exception e) {
                log.info(">>> jdbc.Driver: instance error");
                e.printStackTrace();
            }

            try {
              //conn = DriverManager.getConnection(url, userName, password);
              conn = DriverManager.getConnection("jdbc:mysql://localhost/jugendkultur");
              if(conn!=null) {
                log.info(">>> jdbc.Driver: connect successful");
              }
            } catch (SQLException e) {
                log.info(">>> jdbc.Driver: connect error");
                System.out.println("SQLException: "+e.getMessage());
                System.out.println("SQLState: "+e.getSQLState());
                System.out.println("VendorError: "+e.getErrorCode());
                e.printStackTrace();
            }

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

09-09 10:12:35.185: INFO/MyActivity(556): >>> jdbc.Driver: instance successful
09-09 10:38:58.325: ERROR/dalvikvm(587): Could not find class 'javax.naming.StringRefAddr', referenced from method com.mysql.jdbc.ConnectionPropertiesImpl$ConnectionProperty.storeTo
09-09 10:12:36.515: INFO/MyActivity(556): >>> jdbc.Driver: connect error
09-09 10:12:36.525: INFO/System.out(556): SQLException: Communications link failure
09-09 10:12:36.525: INFO/System.out(556): [ 09-09 10:12:36.525   556:0x233 I/System.out ]
        The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
09-09 10:12:36.525: INFO/System.out(556): SQLState: 08S01
09-09 10:12:36.525: INFO/System.out(556): VendorError: 0
в новой версии драйвера ещё кричит на отсутствие класса кстати

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Android и MySQL

Сообщение Foenix » 09 сен 2013, 14:08

порт где?
.newInstance() не надо.
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Аватара пользователя
Isaev
Сообщения: 145
Зарегистрирован: 03 сен 2013, 09:39
Откуда: Германия
Контактная информация:

Re: Android и MySQL

Сообщение Isaev » 09 сен 2013, 16:42

Foenix писал(а):порт где?
порт не влияет... даже в официальной доке localhost без порта прописан... но я пробовал и с ним, ошибка та же
Foenix писал(а):.newInstance() не надо.
завтра попробую без, но не думаю что это причина, т.к. почти везде пишут что надо

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Android и MySQL

Сообщение Foenix » 09 сен 2013, 21:26

нет, это не причина, но порт лучше написать а потом анализировать ошибки
скорее всего нужно подобрать устойчивую версию драйвера.
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Android и MySQL

Сообщение Foenix » 10 сен 2013, 00:07

Isaev писал(а):
Foenix писал(а):порт где?
порт не влияет... даже в официальной доке localhost без порта прописан...
ты удивишься, там столько неработающих примеров )))
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Аватара пользователя
mozilalvfg
Сообщения: 85
Зарегистрирован: 10 авг 2013, 18:46

Re: Android и MySQL

Сообщение mozilalvfg » 10 сен 2013, 00:35

"Isaev" если вам нужна локальная база(тобиш MySql server ) на устройстве андроид! Вам сюда KSWEB.
Хотя я установил не PRO версию и несмотря что писало мол "сервер MySql не включен" он пахал. После недели мне было приятно работать с этой программой и я решил поддержать разработчика = 3 WMZ+0,5 WMZ комиссия. Он прислал мне ключ на ПРО версию.

2. По Факу с тогоже http://jtds.sourceforge.net/faq.html

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

What is the URL format used by jTDS?

The URL format for jTDS is:

    jdbc:jtds:<server_type>://<server>[:<port>][/<database>][;<property>=<value>[;...]]
Выше я уже Вам писал в пункте 1 : использовать properties

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

        Properties properties = new Properties(); 
        properties.setProperty("user", "Ваш_пользователь"); 
        properties.setProperty("password", "Пароль_рользователя"); 
        properties.setProperty("useUnicode", "true"); 
        properties.setProperty("characterEncoding", "UTF-8"); 
        properties.setProperty("autoReconnect", "true"); 
Connection con = (Connection) DriverManager.getConnection("jdbc:mysql://localhost:3306/" +"Имя_Вашей_базы", properties); 
Connection con = (Connection) DriverManager.getConnection("jdbc:mysql://localhost:3306/" +"Имя_Вашей_базы", properties);
в Вашем коде нет свойств

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

conn = DriverManager.getConnection(url, userName, password); 
Вы можете заметить разницу между
Connection con = (Connection) DriverManager.getConnection("jdbc:mysql://localhost:3306/" +"Имя_Вашей_базы", properties);
и
conn = DriverManager.getConnection(url, userName, password);

Ваша стройка подключения должна быть такая
conn = DriverManager.getConnection(url, userName, password,properties);
Последний раз редактировалось mozilalvfg 10 сен 2013, 03:47, всего редактировалось 1 раз.
Из средств, расширяющих сознание, я признаю только книги и немного пива!
____________________________________________________________________
IntelliJ IDEA 12. Win 7 x64 sp1
KSWEB: сервер + PHP + MySQL FREE
Изображение

Аватара пользователя
mozilalvfg
Сообщения: 85
Зарегистрирован: 10 авг 2013, 18:46

Re: Android и MySQL

Сообщение mozilalvfg » 10 сен 2013, 00:48

"Foenix" как я вас понимаю ;)
Из средств, расширяющих сознание, я признаю только книги и немного пива!
____________________________________________________________________
IntelliJ IDEA 12. Win 7 x64 sp1
KSWEB: сервер + PHP + MySQL FREE
Изображение

Аватара пользователя
mozilalvfg
Сообщения: 85
Зарегистрирован: 10 авг 2013, 18:46

Re: Android и MySQL

Сообщение mozilalvfg » 10 сен 2013, 01:01

Isaev писал(а):
Foenix писал(а):порт где?
порт не влияет... даже в официальной доке localhost без порта прописан... но я пробовал и с ним, ошибка та же
Foenix писал(а):.newInstance() не надо.
завтра попробую без, но не думаю что это причина, т.к. почти везде пишут что надо
Прочитайте Фак net.sourceforge.jtds очень внимательно:

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

What are the class names of the Driver, DataSource, ConnectionPoolDataSource, XADataSource and ObjectFactory implementations?

     Interface	                                                  jTDS Implementation
java.sql.Driver	                              net.sourceforge.jtds.jdbc.Driver
javax.sql.DataSource	                      net.sourceforge.jtds.jdbcx.JtdsDataSource
javax.sql.ConnectionPoolDataSource      net.sourceforge.jtds.jdbcx.JtdsDataSource
javax.sql.XADataSource	                      net.sourceforge.jtds.jdbcx.JtdsDataSource
javax.naming.spi.ObjectFactory	      net.sourceforge.jtds.jdbcx.JtdsObjectFactory
Класа " DriverManager" нет в net.sourceforge.jtds.jdbc!
а соединение возможно через Пул net.sourceforge.jtds.jdbcx.JtdsDataSource (javax.sql.ConnectionPoolDataSource)
Неморочте себе голову используйте стандартный драйвер от Оракла, который посоветовала Вам "Foenix"
Из средств, расширяющих сознание, я признаю только книги и немного пива!
____________________________________________________________________
IntelliJ IDEA 12. Win 7 x64 sp1
KSWEB: сервер + PHP + MySQL FREE
Изображение

Аватара пользователя
Isaev
Сообщения: 145
Зарегистрирован: 03 сен 2013, 09:39
Откуда: Германия
Контактная информация:

Re: Android и MySQL

Сообщение Isaev » 10 сен 2013, 09:45

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

void connect() {
      try {
        Thread t = new Thread(new Runnable() {
          public void run() {
            log.info(">>> Thread is created");

            Connection conn = null;

            String sServerName = "localhost:3306";
            String sDBName = "jugendkultur";

            Properties properties = new Properties();
            properties.setProperty("user", "root");
            properties.setProperty("password", "");
            properties.setProperty("useUnicode", "true");
            properties.setProperty("characterEncoding", "UTF-8");
            properties.setProperty("autoReconnect", "true");

              try {
              Class.forName("com.mysql.jdbc.Driver").newInstance();
              log.info(">>> jdbc.Driver: instance successful");
            } catch (Exception e) {
                log.info(">>> jdbc.Driver: instance error");
                e.printStackTrace();
            }

            try {
              conn = (Connection) DriverManager.getConnection("jdbc:mysql://"+sServerName+"/"+sDBName, properties);
              if(conn!=null) {
                log.info(">>> jdbc.Driver: connect successful");
              }
            } catch (SQLException e) {
                log.info(">>> jdbc.Driver: connect error");
                System.out.println(">SQLException: "+e.getMessage());
                System.out.println(">SQLState: "+e.getSQLState());
                System.out.println(">VendorError: "+e.getErrorCode());
                e.printStackTrace();
            }

            try {
              conn.close();
            } catch (SQLException e) {
                log.info(">>> jdbc.Driver: close error");
                System.out.println(">SQLException: "+e.getMessage());
                System.out.println(">SQLState: "+e.getSQLState());
                System.out.println(">VendorError: "+e.getErrorCode());
                e.printStackTrace();
            } catch (NullPointerException e) {
                log.info(">>> jdbc.Driver: close error (попытка закрытия не созданного соединения)");
                System.out.println(">NullPointerException: "+e.getMessage());
                e.printStackTrace();
            }
          }
        });
      t.start();
      } catch (Exception e) {
          e.printStackTrace();
          log.info(">>> Thread: create error");
      }
    }
Logcat

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

09-10 06:40:57.815: DEBUG/AndroidRuntime(463): --- registering native functions ---
09-10 06:40:58.265: INFO/ActivityManager(59): Starting activity: Intent { flg=0x10000000 cmp=com.example.Todo_List/.MyActivity }
09-10 06:40:58.295: INFO/ActivityManager(59): Start proc com.example.Todo_List for activity com.example.Todo_List/.MyActivity: pid=469 uid=10057 gids={3003}
09-10 06:40:58.344: DEBUG/AndroidRuntime(463): Shutting down VM
09-10 06:40:58.344: DEBUG/dalvikvm(463): Debugger has detached; object registry had 1 entries
09-10 06:40:59.035: DEBUG/dalvikvm(469): GC_EXTERNAL_ALLOC freed 672 objects / 53072 bytes in 42ms
09-10 06:40:59.395: INFO/MyActivity(469): === Logging Anfang ===
09-10 06:40:59.414: INFO/MyActivity(469): >>> Thread is created
09-10 06:40:59.455: INFO/MyActivity(469): >>> jdbc.Driver: instance successful
09-10 06:40:59.654: INFO/ActivityManager(59): Displayed activity com.example.Todo_List/.MyActivity: 1371 ms (total 1371 ms)
09-10 06:41:00.294: DEBUG/dalvikvm(469): GC_FOR_MALLOC freed 3366 objects / 198512 bytes in 42ms
09-10 06:41:00.534: WARN/dalvikvm(469): VFY: unable to find class referenced in signature (Ljavax/naming/Reference;)
09-10 06:41:00.534: INFO/dalvikvm(469): Could not find method javax.naming.Reference.get, referenced from method com.mysql.jdbc.ConnectionPropertiesImpl$ConnectionProperty.initializeFrom
09-10 06:41:00.534: WARN/dalvikvm(469): VFY: unable to resolve virtual method 8307: Ljavax/naming/Reference;.get (Ljava/lang/String;)Ljavax/naming/RefAddr;
09-10 06:41:00.534: DEBUG/dalvikvm(469): VFY: replacing opcode 0x6e at 0x0004
09-10 06:41:00.534: DEBUG/dalvikvm(469): VFY: dead code 0x0007-0013 in Lcom/mysql/jdbc/ConnectionPropertiesImpl$ConnectionProperty;.initializeFrom (Ljavax/naming/Reference;Lcom/mysql/jdbc/ExceptionInterceptor;)V
09-10 06:41:00.534: WARN/dalvikvm(469): VFY: unable to find class referenced in signature (Ljavax/naming/Reference;)
09-10 06:41:00.534: ERROR/dalvikvm(469): Could not find class 'javax.naming.StringRefAddr', referenced from method com.mysql.jdbc.ConnectionPropertiesImpl$ConnectionProperty.storeTo
09-10 06:41:00.534: WARN/dalvikvm(469): VFY: unable to resolve new-instance 521 (Ljavax/naming/StringRefAddr;) in Lcom/mysql/jdbc/ConnectionPropertiesImpl$ConnectionProperty;
09-10 06:41:00.534: DEBUG/dalvikvm(469): VFY: replacing opcode 0x22 at 0x0006
09-10 06:41:00.534: DEBUG/dalvikvm(469): VFY: dead code 0x0008-0019 in Lcom/mysql/jdbc/ConnectionPropertiesImpl$ConnectionProperty;.storeTo (Ljavax/naming/Reference;)V
09-10 06:41:00.664: INFO/dalvikvm(469): Could not find method java.lang.management.ManagementFactory.getThreadMXBean, referenced from method com.mysql.jdbc.MysqlIO.appendDeadlockStatusInformation
09-10 06:41:00.664: WARN/dalvikvm(469): VFY: unable to resolve static method 7676: Ljava/lang/management/ManagementFactory;.getThreadMXBean ()Ljava/lang/management/ThreadMXBean;
09-10 06:41:00.664: DEBUG/dalvikvm(469): VFY: replacing opcode 0x71 at 0x0079
09-10 06:41:00.675: DEBUG/dalvikvm(469): VFY: dead code 0x007c-00a9 in Lcom/mysql/jdbc/MysqlIO;.appendDeadlockStatusInformation (Ljava/lang/String;Ljava/lang/StringBuffer;)V
09-10 06:41:00.675: DEBUG/dalvikvm(469): VFY: dead code 0x00ea-020a in Lcom/mysql/jdbc/MysqlIO;.appendDeadlockStatusInformation (Ljava/lang/String;Ljava/lang/StringBuffer;)V
09-10 06:41:04.934: INFO/MyActivity(469): >>> jdbc.Driver: connect error
09-10 06:41:04.934: INFO/System.out(469): >SQLException: Could not create connection to database server. Attempted reconnect 3 times. Giving up.
09-10 06:41:04.934: INFO/System.out(469): >SQLState: 08001
09-10 06:41:04.934: INFO/System.out(469): >VendorError: 0
09-10 06:41:04.934: WARN/System.err(469): com.mysql.jdbc.exceptions.MySQLNonTransientConnectionException: Could not create connection to database server. Attempted reconnect 3 times. Giving up.
09-10 06:41:04.944: WARN/System.err(469): at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1012)
09-10 06:41:04.944: WARN/System.err(469): at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:989)
09-10 06:41:04.944: WARN/System.err(469): at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:975)
09-10 06:41:04.944: WARN/System.err(469): at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:920)
09-10 06:41:04.944: WARN/System.err(469): at com.mysql.jdbc.ConnectionImpl.connectWithRetries(ConnectionImpl.java:2388)
09-10 06:41:04.944: WARN/System.err(469): at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2309)
09-10 06:41:04.944: WARN/System.err(469): at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:834)
09-10 06:41:04.954: WARN/System.err(469): at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:412)
09-10 06:41:04.954: WARN/System.err(469): at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:346)
09-10 06:41:04.954: WARN/System.err(469): at java.sql.DriverManager.getConnection(DriverManager.java:191)
09-10 06:41:04.954: WARN/System.err(469): at com.example.Todo_List.MyActivity$1.run(MyActivity.java:45)
09-10 06:41:04.954: WARN/System.err(469): at java.lang.Thread.run(Thread.java:1096)
09-10 06:41:04.954: WARN/System.err(469): Caused by: com.mysql.jdbc.CommunicationsException: Communications link failure
09-10 06:41:04.954: WARN/System.err(469): [ 09-10 06:41:04.954   469:0x1dc W/System.err ]
        The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
09-10 06:41:04.964: WARN/System.err(469): at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1117)
09-10 06:41:04.964: WARN/System.err(469): at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:357)
09-10 06:41:04.964: WARN/System.err(469): at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2482)
09-10 06:41:04.964: WARN/System.err(469): at com.mysql.jdbc.ConnectionImpl.connectWithRetries(ConnectionImpl.java:2327)
09-10 06:41:04.964: WARN/System.err(469): ... 7 more
09-10 06:41:04.964: WARN/System.err(469): Caused by: java.net.ConnectException: localhost/127.0.0.1:3306 - Connection refused
09-10 06:41:04.964: WARN/System.err(469): at org.apache.harmony.luni.net.PlainSocketImpl.connect(PlainSocketImpl.java:254)
09-10 06:41:04.964: WARN/System.err(469): at org.apache.harmony.luni.net.PlainSocketImpl.connect(PlainSocketImpl.java:219)
09-10 06:41:04.974: WARN/System.err(469): at java.net.Socket.startupSocket(Socket.java:781)
09-10 06:41:04.974: WARN/System.err(469): at java.net.Socket.<init>(Socket.java:316)
09-10 06:41:04.974: WARN/System.err(469): at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:259)
09-10 06:41:04.974: WARN/System.err(469): at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:307)
09-10 06:41:04.974: WARN/System.err(469): ... 9 more
09-10 06:41:04.974: INFO/MyActivity(469): >>> jdbc.Driver: close error (попытка закрытия не созданного соединения)
09-10 06:41:04.974: INFO/System.out(469): >NullPointerException: null
09-10 06:41:04.974: WARN/System.err(469): java.lang.NullPointerException
09-10 06:41:04.974: WARN/System.err(469): at com.example.Todo_List.MyActivity$1.run(MyActivity.java:58)
09-10 06:41:04.974: WARN/System.err(469): at java.lang.Thread.run(Thread.java:1096)
09-10 06:41:05.174: DEBUG/dalvikvm(107): GC_EXPLICIT freed 661 objects / 36920 bytes in 128ms
09-10 06:41:10.204: DEBUG/dalvikvm(225): GC_EXPLICIT freed 157 objects / 11504 bytes in 144ms
09-10 06:41:15.235: DEBUG/dalvikvm(269): GC_EXPLICIT freed 49 objects / 2472 bytes in 134ms
ну по крайней мере теперь не ругается на путь :) Только соединиться всё равно не выходит
на нескольких форумах писали что при переходе на старую версию 5.0 эта ошибка исчезала
пробовал, но у меня тогда до открытия вообще не доходит дело, отваливается поток

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

09-10 07:46:33.138: ERROR/AndroidRuntime(372): FATAL EXCEPTION: Thread-8
        java.lang.VerifyError: com.mysql.jdbc.MysqlIO
        at com.mysql.jdbc.Connection.createNewIO(Connection.java:2921)
        at com.mysql.jdbc.Connection.<init>(Connection.java:1555)
        at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:285)
        at java.sql.DriverManager.getConnection(DriverManager.java:191)
        at com.example.Todo_List.MyActivity$1.run(MyActivity.java:47)
        at java.lang.Thread.run(Thread.java:1096)
может он у меня криво реализован?

Аватара пользователя
mozilalvfg
Сообщения: 85
Зарегистрирован: 10 авг 2013, 18:46

Re: Android и MySQL

Сообщение mozilalvfg » 10 сен 2013, 18:42

Установите для начала http://www.mysql.com/products/workbench/ и попробуйте зайти через него. Я подозреваю что у root нет пароля при соединении. Всё таки попробуйте подключиться локально через "workbench". Если удачно пишите будем пробовать следующий этап.

P.S. Практическим опытом собрав проект на Еклипсе я понял причину не работы кода:
1. у root не может быть пустого пароля;
2. без установленного MySql server на андроид эмуляторе "localhost:3306" работать не будет;

Решение проблем - установите виртуальною машину, в ней установите MySql сервер , настройте сеть с виртуалкой чтобы через "workbench" с материнской ОС Вы могли подключаться к MySql базе на виртуалке, создайте пользователей как писал я раньше.
В проекте пропишите IP виртуалки типа так
DriverManager.getConnection("jdbc:mysql://192.168.0.150:3306/db", properties);
гарантирую 100% работы данного метода.

P.S.S. В подтверждения Ваших мучений создал новый эмулятор по умолчанию, не устанавливал MySql server на андроид и строка DriverManager.getConnection("jdbc:mysql://localhost:3306/db", properties); не работает - по причине отсутствия MySql server на андроид
Последний раз редактировалось mozilalvfg 11 сен 2013, 01:30, всего редактировалось 1 раз.
Из средств, расширяющих сознание, я признаю только книги и немного пива!
____________________________________________________________________
IntelliJ IDEA 12. Win 7 x64 sp1
KSWEB: сервер + PHP + MySQL FREE
Изображение

Аватара пользователя
Isaev
Сообщения: 145
Зарегистрирован: 03 сен 2013, 09:39
Откуда: Германия
Контактная информация:

Re: Android и MySQL

Сообщение Isaev » 11 сен 2013, 00:40

mozilalvfg писал(а): Напомните пожалуйста в какой IDE Вы программируете? я соберу тестовый проект для Вас.

Установите для начала http://www.mysql.com/products/workbench/ и попробуйте зайти через него. Я подозреваю что у root нет пароля при соединении. Всё таки попробуйте подключиться локально через "workbench". Если удачно пишите будем пробовать следующий этап.
Зачем? я на php делаю простенький скрипт и с теми же параметрами подключения всё прекрасно работает
у root нет пароля да, потому и в программе там пусто, без пароля должно подключаться
а IDE - IntelliJ IDEA, проект вы уже выкладывали, но у меня он ту же ошибку выдаёт, что и мой

Аватара пользователя
Isaev
Сообщения: 145
Зарегистрирован: 03 сен 2013, 09:39
Откуда: Германия
Контактная информация:

Re: Android и MySQL

Сообщение Isaev » 11 сен 2013, 13:41

mozilalvfg писал(а):Установите для начала http://www.mysql.com/products/workbench/ и попробуйте зайти через него. Я подозреваю что у root нет пароля при соединении. Всё таки попробуйте подключиться локально через "workbench". Если удачно пишите будем пробовать следующий этап.
да, через workbench всё подключается нормально, с пустым паролем для root
mozilalvfg писал(а): 1. у root не может быть пустого пароля;
2. без установленного MySql server на андроид эмуляторе "localhost:3306" работать не будет;
1. ну как не может, если он там по-умолчанию пустой и везде с пустым работает?
2. а на андроиде потом тоже придётся ставить MySql server или это только на этапе разработки?
если первое, то это не вариант, если второе, то звучит довольно странно

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Android и MySQL

Сообщение Foenix » 11 сен 2013, 13:48

Странно звучит, чтоб сервер ставить на андроид, когда у андроида есть своя база данных хорошая, простая и быстрая. Смысл? Да скачайте вы данные с удаленного сервера в базу sqlite и работайте с ней - удобно, быстро.
Не знаю, конечно, для чего у вас приложение, но я бы сто раз подумала, прежде чем устанавливать приложение с такими требованиями в свой планшет. Сервер - это не просто какая-то "библиотечка" для работы с субд
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Mykola
Сообщения: 132
Зарегистрирован: 26 июл 2013, 12:06

Re: Android и MySQL

Сообщение Mykola » 11 сен 2013, 14:42

Foenix писал(а):
rezak90 писал(а):
в-третьих, гемора никакого с моей стороны нету
это сейчас нету, а когда ты только интересовалась этой темой то сколько времени потратила? наверняка не одну неделю.
ну, а сколько бы я потратила на другую тему? Скажем так, чисто соединение я делала примерно неделю, но и потоки и все что с этим связано туда входило. ПРосто если уж так брать, то я месяца два-три первые каждый день какую-то подобную задачку решала, т.к. это все для меня новое.
Я так понимаю,что при описываемом тобой способе мне бы пришлось еще на стороне сервера что-то делать, а мне бы этого точно не дали.
Ну, к примеру что-то на ПХП замутить, сервис...))

У меня возникают другие вопросы:
Как держится соединение?
Насколько это безопасно с точки зрения данных?

И звените за офф
Не заметил что тут 5 страниц.

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Android и MySQL

Сообщение Foenix » 11 сен 2013, 15:12

в моем случае все просто - это было требование руководства и для безопасности у нас есть армия админов, плюс обязательный фиксированный айпи на устройствах. Соединение держится отлично, если у устройства хороший вай-фай.
В других случаях лучше делать http-запросами и парсить json, замутив апи на сервере.
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Mykola
Сообщения: 132
Зарегистрирован: 26 июл 2013, 12:06

Re: Android и MySQL

Сообщение Mykola » 11 сен 2013, 15:20

Foenix писал(а):в моем случае все просто - это было требование руководства и для безопасности у нас есть армия админов, плюс обязательный фиксированный айпи на устройствах. Соединение держится отлично, если у устройства хороший вай-фай.
В других случаях лучше делать http-запросами и парсить json, замутив апи на сервере.
Я не силен, но соединение с базой на прямую не есть хорошо(в том плане что все параметры подключения к базе статические, я правильно понимаю?).

В других случаях лучше делать http-запросами и парсить json, замутив апи на сервере. -Этот подход для ленивых (буду надеяться, что Славик, мне на спину плевать не будет))) ).

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Android и MySQL

Сообщение Foenix » 11 сен 2013, 15:23

у тебя вопрос был держится ли соединение, а что хорошо или плохо мы уже обсуждали. Если возможность есть, значит, она кому-то требуется.
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Mykola
Сообщения: 132
Зарегистрирован: 26 июл 2013, 12:06

Re: Android и MySQL

Сообщение Mykola » 11 сен 2013, 15:40

Foenix писал(а):у тебя вопрос был держится ли соединение, а что хорошо или плохо мы уже обсуждали. Если возможность есть, значит, она кому-то требуется.
Насколько это безопасно с точки зрения данных? - вопрос 2.
Если возможность есть... -возможность всегда есть...

Я не пытаюсь тебе переубедить это плохо, или хорошо. Все зависит от задачи...
Я всего хочу сказать, что выбирая не стандартное решение нужно быть уверенным, что заказчик полностью осознает последствия.
Сегодня читал статью на хабре(http://habrahabr.ru/post/193204/) суть в том что он пишет приложения для таксистов связанное с расчетом приватбанковской картой и нашел уязвимость с переводом денег. Что делает банк, он обвиняет программиста и возбуждает уголовное дело.
Последний раз редактировалось Mykola 11 сен 2013, 15:49, всего редактировалось 1 раз.

Mykola
Сообщения: 132
Зарегистрирован: 26 июл 2013, 12:06

Re: Android и MySQL

Сообщение Mykola » 11 сен 2013, 15:43

обязательный фиксированный айпи

:) :) :) :)

Ответить