Merhabalar

Ubuntu 9 üzerinde android uygulaması geliştirirken mssql veri tabanı ile işlemleri gerçekleştiriyordum ama aynı uygulamayı yeni format attığım başka bir bilgisayarımda denerken uygulama mssql veri tabanına bağlanamıyor buradaki ubuntu sürümü ise son versiyon.Eclipse ve android ile ilgili herşeyin kurulumunu tam yaptım ama yinede mssql veri tabanına bağlanırken hata veriyor bunun sebebi ne olabilir?Boş bir tane uygulama üzerinden mssql 'e bağlanmaya çalışıncada olmuyor ubuntu'nun bu son versiyonunda başka bir yolmu izlemeliyim? jdbc driver'ı kullanıyorum

soruldu: 06 Haz '12, 17:51

gokhanakgol's gravatar image

gokhanakgol
705687777
cevap kabul oranı: 30%

değiştirildi: 07 Haz '12, 06:19

%C3%B6zcanacar's gravatar image

özcanacar ♦♦
17.2k59183183


Ubuntu'nun 12.04 LTS sürümünü kullanıyorsun sanırım.

JDBC driver kullandığından bağlantı problemi yoksa, ya da erişmeye çalıştığın (database'in bulunduğu) makinada erişmeye çalıştığın portu (öntanımlı olarak 1433'tür) engelleyen firewall gibi bir faktör yoksa bağlanabiliyor olmanız lazım.

Bu noktada denemeni isteyeceğim iki şey var:

  • Out-going bağlantılar için Ubuntu'da 1433 portunu açman(Mssq server portun farklı ise onu öğrenip o portu açman gerekir). Bunu şu şekilde yapabilirsin:

    sudo iptables -A OUTPUT -p tcp --dport 1433 -j ACCEPT
    

Bu başarılı olmaz ise aşağıdaki maddeyi denemeni öneririm. Eğer madde 2'deki koşul sağlanamıyorsa bağlanmaya çalıştığın makinanın 1433 portunu(ya da Mssql portun ne ise) açman gerekir, Ubuntu bilgisayarına format attığın zamana paralel olarak Windows bilgisayarda port kapanmış ya da kapatılmış olabilir(rastlantı bağlamında). Eğer başarılı olur ise sorunun yine Ubuntu'dan kaynaklandığını söyleyeceğiz ki out-going bağlantı portlarına bu sefer 1433 kuralını insert(-I) edeceğiz(Yukarıda -A kullanmış, kual zincirine yeni bir kuralı append etmiştik).

    sudo iptables -I OUTPUT -p tcp --dport 1433 -j ACCEPT
  • Windows kurulu olan başka bir makinadan aynı tip bir bağlantı sağlanabiliyor mu? (Eclipse kullanıyorsanız projeyi o makinaya taşıyıp, makina üzerine Eclipse ve Android plug-in windows sürümünü indirip aynı projeyi çalıştırarak deneyebilirsiniz.)

Edit: Daha sonra aklıma gelen bir başka şey ise Ubuntu 9'da kullandığın JDBC versiyonu ile Ubuntu'nun yeni sürümünü kurduktan sonra kullandığın JDBC versiyonunun farklı olabileceği. Eğer farklı versiyonlar ise sorun teşkil edebilir. Önce bunu kontrol edip, farklılar ise yeni Ubuntu'da kullandığın versiyonu eskisine düşürmen ilk denemen gereken şey olmalı diye düşünüyorum.

permanent link

cevaplandı: 07 Haz '12, 03:10

mabulgu's gravatar image

mabulgu ♦
2.8k43040
cevap kabul oranı: 26%

değiştirildi: 07 Haz '12, 03:19

Merhaba

Yanıtınız için teşekkürler.Dediğiniz tüm adımları yaptım ama bir türlü uygulama ubuntu 12 de sql server 'a bağlanmıyor.Atladığım veya formattan sonra yapmadığım bir ayarı olabilir.Şu an ubuntu 9 da çalışan uygulama ubuntu'nun 12 sürümünde çalışmıyor.Uygulamayı direkt kopyalıyorum hiç bir sorun yok ama çalışma esnasında şöyle bir hata geri dönüyor ubuntu 12 sürümünde

HATA : net.sourceforge.jdts.jdbc.Driver

Kullandığım kodlar ise şu şekilde

url = "jdbc:jtds:sqlserver://ipadresi;databaseName=veritabanıadı"; driver = "net.sourceforge.jtds.jdbc.Driver";

try {

        Class.forName(driver).newInstance();
        Connection conn = DriverManager.getConnection(url, userName,
                password);
        Statement statement = conn.createStatement();
        statement.executeUpdate("INSERT INTO Kisiler (Ad,Soyad,Yas) VALUES ('Gökhan','Akgöl',23)");

    } catch (Exception e) {
        tvHata.setText(e.getMessage());
    }

Tahminim driver'ı tam görmüyor ama böyle olması için bir nedenide yok.Uygulamayı ilk olarak ubuntu 9 sürümünde oluşturmuştum daha sonra 2. bilgisayara ubuntu 12 sürümünü kurunca yeni olana geçirmek istedim uygulamayı ama bu hatadan dolayı geçiremiyorum.

permanent link

cevaplandı: 07 Haz '12, 17:52

gokhanakgol's gravatar image

gokhanakgol
705687777
cevap kabul oranı: 30%

Bu arada uygulamayı başka bir bir bilgisayardada çalıştırmayı denedim eclipse 'de yine aynı hatayı verdi.Şu an uygulama sadece ilk oluşturulduğu bilgisayarda çalışıyor diğer windows veya ubuntu sürümlerinde çalışmıyor yani mssql bağlantı hatası veriyor

(07 Haz '12, 17:54) gokhanakgol gokhanakgol's gravatar image

O zaman mssql yayını yaptığın makinada güvenlik ayarlarında bir değişiklik olmuştur. Yakın zamanda Mssql'in olduğu makinada bir update yaptıysan ya da otomatik olarak yapıldıysa(firewall update) ayarlar resetlenmiş, daha önce açık olan Mssql portu kapanmış olabilir.

(08 Haz '12, 01:43) mabulgu ♦ mabulgu's gravatar image
Cevabınız
toggle preview

Bu soruyu takip et

E-Posta üzerinden:

Üyelik girişi yaptıktan sonra abonelik işlemlerini yapabilirsiniz

RSS üzerinden:

Cevaplar

Cevaplar ve Yorumlar

Yazı Formatlama

  • *italic* ya da _italic_
  • **bold** ya da __bold__
  • link:[text](http://url.com/ "başlık")
  • resim?![alt text](/path/img.jpg "başlık")
  • liste: 1. Foo 2. Bar
  • temel HTML etiketleri de kullanılabilir

Bu sorunun etiketleri:

×818
×53
×29

Soruldu: 06 Haz '12, 17:51

Görüntüleme: 1,410 kez

Son güncelleme: 08 Haz '12, 02:21

powered by BitNami OSQA