Konuyu Paylaş : facebook gplus twitter

Konuyu Oyla:
  • Derecelendirme: 3/5 - 2 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Hosting üzerindeki Mysql e direkt erişim
#1
Benim denemeler için kullandığım bir Godaddy hosting hesabım var. Burada yer alan siteleri ve mysql erişimini sorunsuz kullanıyorum.
Delphi üzerinde geliştirdiğim uygulamalarda kullanım konforu açısından iki çeşit programlama yapıyorum. VLC ve mobil uygulama için FMX kullanıyorum.
Her ikisinde de MyDAC ile MYSQL'e bağlanıyorum. Sık sık "Lost connection" hatası verse de onu bir şekilde çözebilirim diye düşünüyorum.
Merak ettiğim şey şu. Ben PHP kullanmadan, MyDAC ile direkt bağlandığımda hosting açısından bir sorun çıkar mı? Yani hosting üzerinde yer alan MySQL direkt erişimle kullanılabilir mi? 
Daha önceden yerli bir host satın almıştım. Bana PHP olmadan kullanamazsın demişlerdi. Ki direkt olarak erişemiyordum. Bu yabancı hostlarda böyle bir sınırlandırma var mı?
Bu konuda bilgisi olan arkadaşlar görüşlerini yazarsa sevinirim...
Cevapla
#2
Merhaba,
DelphiCan'ın bulunduğu hosting Natro. Linux üzerinde PHP MaySQL ile çalışıyor.

02.png
While true do; Hayat döngüsü, kısır değildir! Yapılan bir yanlış, o döngünün dışına çıkmanızı sağlayacaktır.
WWW
Cevapla
#3
Benim daha önce kullanmış olduğum hosting de Natro üzerindeydi. Çok fazla sorun yaşadım. Şu an yabancı bir hostinge geçtim, 2 yılı geçti ve henüz hiç müşteri hizmetlerini dahi aramadım.
Yani binlerce kişinin kullanacağı bir sistemi bu şekilde yazabilir miyiz? Bu MySql erişim bileşenleri bize bir sıkıntı çıkartır mı?
Cevapla
#4
(22-12-2017, Saat: 16:48)nehirnnn Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye OlBenim daha önce kullanmış olduğum hosting de Natro üzerindeydi. Çok fazla sorun yaşadım. Şu an yabancı bir hostinge geçtim, 2 yılı geçti ve henüz hiç müşteri hizmetlerini dahi aramadım.
Yani binlerce kişinin kullanacağı bir sistemi bu şekilde yazabilir miyiz? Bu MySql erişim bileşenleri bize bir sıkıntı çıkartır mı?

Yabancı sunucuların gücü tabi ki inkar edilemez. 
Veri tabanı ne olursa olsun, önemli olan doğrudan bağlanmayıp, bir ara katman kullanarak, iş yükünü sunucuya bırakmanız; client tarafında ise yalnızca metinsel ifadeleri (XML, JSON vb.) kullanmanızdır. Bu durumda emin olun milyarlarca kayıtta bile sorun yaşamazsınız (tabi sorgu yönteminiz de son derece önem arz ediyor).
While true do; Hayat döngüsü, kısır değildir! Yapılan bir yanlış, o döngünün dışına çıkmanızı sağlayacaktır.
WWW
Cevapla
#5
(22-12-2017, Saat: 16:10)nehirnnn Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye OlBenim denemeler için kullandığım bir Godaddy hosting hesabım var. Burada yer alan siteleri ve mysql erişimini sorunsuz kullanıyorum.
Delphi üzerinde geliştirdiğim uygulamalarda kullanım konforu açısından iki çeşit programlama yapıyorum. VLC ve mobil uygulama için FMX kullanıyorum.
Her ikisinde de MyDAC ile MYSQL'e bağlanıyorum. Sık sık "Lost connection" hatası verse de onu bir şekilde çözebilirim diye düşünüyorum.
Merak ettiğim şey şu. Ben PHP kullanmadan, MyDAC ile direkt bağlandığımda hosting açısından bir sorun çıkar mı? Yani hosting üzerinde yer alan MySQL direkt erişimle kullanılabilir mi? 
Daha önceden yerli bir host satın almıştım. Bana PHP olmadan kullanamazsın demişlerdi. Ki direkt olarak erişemiyordum. Bu yabancı hostlarda böyle bir sınırlandırma var mı?
Bu konuda bilgisi olan arkadaşlar görüşlerini yazarsa sevinirim...

Bir zamanlar Godaddy firmasıyla hem php, hemde ASP.NET tabanlı site tasarımları için çalıştım. Doğrudan erişim desteği vermediği gibi çalıştırılan SQL ifadelerini bile takip ediyorlardı. Öyleki sitenin birinde çok uzun sorgular çalıştırdığım ve sunucuya aşırı yüklendiğim gibi saçma sapan ikazlarla trafiğimi bloke ediyorlardı.

MyDAc, UniDac, AnyDac, Ado vs. VCL bileşenleri ile her türlü veri tabanına uzaktan ve doğrudan erişebilirsiniz. Bunun için web hosting hizmet sağlayıcınızın uzaktan kalıcı bağlantıya (persistent connection) izin vermesi gerekir. Bildiğim kadarıyla natro bu izni veriyor. Hosting firmanıza uzak kalıcı bağlantı isteğinizi bildirmelisiniz.
Cevapla
#6
Tam da denk geldi. Yarım saattir cevap yazmaya çalışıyorum ama delphican.com a erişim yoktu Smile
Ben Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol kullanıyorum. Sitelerime erişim kesildiğinde ve sonra tekrar erişilebilir olduğunda mail geliyor.
Bu şekilde ne kadarlık kesintiler yaşandığını öğrenebilirsiniz
Natro da iken bu gelen mailler deli etmişti beni.
Cevapla
#7
3306 bağlantıya izin vermiyor sa sunucunuz unidac ile gelen tunnel.php dosyası ile bağlantı sağlayabilirsiniz.

“Do. Or do not. There is no try.”
Cevapla
#8
(22-12-2017, Saat: 20:03)masteryoda Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol3306 bağlantıya izin vermiyor sa sunucunuz unidac ile gelen tunnel.php dosyası ile bağlantı sağlayabilirsiniz.

Teşekkürler. Ben MyDac kullanıyorum ama sürekli "lost connection" hatası alıyorum. Dataset bir süre işlem yapılmayınca otomatik kapanıyor galiba.
UniDac bileşenini de inceleyim sizin önerinizle....
Cevapla
#9
(23-12-2017, Saat: 01:09)nehirnnn Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
(22-12-2017, Saat: 20:03)masteryoda Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol3306 bağlantıya izin vermiyor sa sunucunuz unidac ile gelen tunnel.php dosyası ile bağlantı sağlayabilirsiniz.

Teşekkürler. Ben MyDac kullanıyorum ama sürekli "lost connection" hatası alıyorum. Dataset bir süre işlem yapılmayınca otomatik kapanıyor galiba.
UniDac bileşenini de inceleyim sizin önerinizle....

bu network yapınızla da ilgili olabilir sunucu tarafından da olabilir en iyisi işiniz biter bitmez bağlantıyı kapatmak yanlış hatırlamıyor isem bir uniquery nesnesi ile bir sorgu çalıştırdığınızda eğer bağlı bulunduğu connection disconnect modunda ise onu connect moduna alıyordu.

“Do. Or do not. There is no try.”
Cevapla
#10
(23-12-2017, Saat: 01:09)nehirnnn Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye OlTeşekkürler. Ben MyDac kullanıyorum ama sürekli "lost connection" hatası alıyorum. Dataset bir süre işlem yapılmayınca otomatik kapanıyor galiba.
UniDac bileşenini de inceleyim sizin önerinizle....

UniDac bileşen setinde Uniconnection bileşeni OnConnectionLost olay yöneticisi mevcut. Bu olay yöneticisinden faydalanabilirsiniz. Diğer bir seçenek kullandığınız connection bileşeni destekliyorsa ConnectionTimeOut süresini makul bir süreye çıkarmak olabilir. Bu makül süreyi iyi ayarlamak gerekir. Aksi halde kullanıcıyı gereksiz yere oyalamış olabilirsiniz. Benim tercihim aşağıdaki gibi devam edip etmemeyi kullanıcıya bırakmak.  
TRetryMode için Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol bakabilirsiniz.

 
procedure TDMPublic.UniConnMysqlConnectionLost(Sender: TObject;
 Component: TComponent; ConnLostCause: TConnLostCause;
  var RetryMode: TRetryMode);
begin

   if Application.MessageBox('Veri tabanı bağlantısı kesildi. Tekrar bağlanılsın mı?','Bağlantı Kesildi',MB_ICONINFORMATION + MB_YESNO) = IDYES
      RetryMode := rmReconnectExecute  // - > TRetryMode = (rmRaise, rmReconnect, rmReconnectExecute);
  else
    SafetyTerminate(Application.MainForm.Handle);

end;

Web hosting üzerinde çalışan bir veri tabanı ile etkileşimli ve verimli çalışmanın en iyi yolu Datasnap, Rest, Web servis vb. uygulamalardır. Ancak kendinize ait statik IP adresli sunucuda bir çözümdür.
Cevapla

Konuyu Paylaş : facebook gplus twitter



Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Mobilde GSM datalarına erişim mcuyan 2 203 06-11-2017, Saat: 23:46
Son Yorum: mcuyan



Konuyu Okuyanlar: 1 Ziyaretçi