[Fix] MariaDB "error: 'MYSQL' {aka 'struct st_mysql'} has no member named 'reconnect'"

Kaptan Yosun

Discord: kaptanyosun
Premium Üye
Usta Üye
Mesaj
527
Çözümler
17
Beğeni
351
Puan
829
Ticaret Puanı
0
FreeBSD 13 üzerinde full build alırken bu hatayı alıyordum. Çözümü şu şekilde;

Aç: Srcs/Server/libsql/AsyncSQL.h

Bul:
#include <mysql/mysql.h>
#include <mysql/errmsg.h>
#include <mysql/mysqld_error.h>

Değiştir:
#include <mysql/server/mysql.h>
#include <mysql/server/errmsg.h>
#include <mysql/server/mysqld_error.h>

/usr/local/include/mysql dizinine git

Yeni link oluştur.

Link adı: psi
Link adresi: /usr/local/include/mysql/server/mysql/psi
 
Son düzenleme:
fix değil de-fix olm bu
Doğru, fix değil ama bir şeyi de bozmuyor. İleri okuma yapamadım gerçek bir çözüm için. Sadece build almamı sağlıyor ve gördüğüm kadarıyla neredeyse herkes bu şekilde aşıyor bu hatayı. Workaround daha doğru olabilir, kimse bu workaroundun bir şeyi bozdugundan da bahsetmemiş baktığım kadarıyla
 
Doğru, fix değil ama bir şeyi de bozmuyor. İleri okuma yapamadım gerçek bir çözüm için. Sadece build almamı sağlıyor ve gördüğüm kadarıyla neredeyse herkes bu şekilde aşıyor bu hatayı. Workaround daha doğru olabilir, kimse bu workaroundun bir şeyi bozdugundan da bahsetmemiş baktığım kadarıyla

kimse bu şekilde aşmıyor knk. ben kimsenin özel bir kütüphanenin ki bu mariadb gibi kocaman bir kütüphaneyse daha da garipleşir, dosyalarını editlediğini görmedim
 
kimse bu şekilde aşmıyor knk. ben kimsenin özel bir kütüphanenin ki bu mariadb gibi kocaman bir kütüphaneyse daha da garipleşir, dosyalarını editlediğini görmedim
Hatayı Google'a yazdığımda konuyla alakalı en yukarıda çıkan 2 GitHub sayfası, 1 stackoverflow ve 2 forum sayfasında hep bu workarounddan bahsediliyor. O yüzden öyle dedim. Çözüm önerin var mı?
 
Hatayı Google'a yazdığımda konuyla alakalı en yukarıda çıkan 2 GitHub sayfası, 1 stackoverflow ve 2 forum sayfasında hep bu workarounddan bahsediliyor. O yüzden öyle dedim. Çözüm önerin var mı?

çözümü söyleyecem de, allah allah yav merak ettim nerde yazıyor acaba çözümler, link atabilir misin?
 
Linkleri görebilmek için giriş yap veya kayıt ol.


Linkleri görebilmek için giriş yap veya kayıt ol.

Sağdan soldan çözüm alınıp kullanılmaz. unix sistemde, c++ kullanıp;

Python2 ve linux sistem için oluşturulan dosyalardaki çıkan sorun için fixi kullanıyorsun. yaptığın şeyin de-fix olmasının nedeni oluşturduğun verinin hiçbir şekilde değişmeyecek olması ve değişmemesi sonucunda mysql bağlanmasa bile hata vermeyeceği sorunun nerden kaynaklandığını bulamamak olacak. sorunun gerçek fixi bildiğim kadarıyla çoğu yerde paylaşıldı zaten;

my_bool mariadb_reconnect = true;


reconnect --> mariadb_reconnect
 
Sağdan soldan çözüm alınıp kullanılmaz. unix sistemde, c++ kullanıp;

Python2 ve linux sistem için oluşturulan dosyalardaki çıkan sorun için fixi kullanıyorsun. yaptığın şeyin de-fix olmasının nedeni oluşturduğun verinin hiçbir şekilde değişmeyecek olması ve değişmemesi sonucunda mysql bağlanmasa bile hata vermeyeceği sorunun nerden kaynaklandığını bulamamak olacak. sorunun gerçek fixi bildiğim kadarıyla çoğu yerde paylaşıldı zaten;

my_bool mariadb_reconnect = true;


reconnect --> mariadb_reconnect
Teşekkür ederim

Konuyu kimseyi yanlış yönlendirmemek adına düzenledim.
 
Bunlara hiç gerek yok aslında AsyncSQL.h içerisinde şu düzenlemeleri yaparsan problem kalkacaktır. Neden bunu yapıyoruz diye soracak olursan mariadb bu dosyaları server klasörünün içerisine zaten kuruyor ve orada reconnect tanımlı @Whistle mariadb videosunda bunu detaylıca anlatıyor Youtube telifleri yüzünden belki videoyu gizlemiştir fakat udemy üzerinden izleyebilirsiniz.

Bul:
#include <mysql/mysql.h>
#include <mysql/errmsg.h>
#include <mysql/mysqld_error.h>

Değiştir:
#include <mysql/server/mysql.h>
#include <mysql/server/errmsg.h>
#include <mysql/server/mysqld_error.h>
 
Son düzenleme:
Bunlara hiç gerek yok aslında AsyncSQL.h içerisinde şu düzenlemeleri yaparsan problem kalkacaktır. Neden bunu yapıyoruz diye soracak olursan mariadb bu dosyaları server klasörünün içerisine zaten kuruyor ve orada reconnect tanımlı @Whistle mariadb videosunda bunu detaylıca anlatıyor Youtube telifleri yüzünden belki videoyu gizlemiştir fakat udemy üzerinden izleyebilirsiniz.

Bul:
#include <mysql/mysql.h>
#include <mysql/errmsg.h>
#include <mysql/mysqld_error.h>

Değiştir:
#include <mysql/server/mysql.h>
#include <mysql/server/errmsg.h>
#include <mysql/server/mysqld_error.h>
Uyanınca deneyeceğim hocam, sağ olun
 
Bunlara hiç gerek yok aslında AsyncSQL.h içerisinde şu düzenlemeleri yaparsan problem kalkacaktır. Neden bunu yapıyoruz diye soracak olursan mariadb bu dosyaları server klasörünün içerisine zaten kuruyor ve orada reconnect tanımlı @Whistle mariadb videosunda bunu detaylıca anlatıyor Youtube telifleri yüzünden belki videoyu gizlemiştir fakat udemy üzerinden izleyebilirsiniz.

Bul:
#include <mysql/mysql.h>
#include <mysql/errmsg.h>
#include <mysql/mysqld_error.h>

Değiştir:
#include <mysql/server/mysql.h>
#include <mysql/server/errmsg.h>
#include <mysql/server/mysqld_error.h>
Yalnız videolardan sonra mariadb’ye yeni sürümler geldi. Bazı şeyler güncellenmiş olabilir. Eğer reconnect tanımı değiştiyse bu düzenlemeler ile beraber konuda belirttiği düzenlemeleri de yapması gerekebilir. @Debloat mariadb sürümü nedir?

Uyanınca deneyeceğim hocam, sağ olun
Denedikten sonra bilgi verirseniz sevinirim. Böyle durumlarda ders videolarının altına notlar düşmek gerekiyor.
 
Yalnız videolardan sonra mariadb’ye yeni sürümler geldi. Bazı şeyler güncellenmiş olabilir. Eğer reconnect tanımı değiştiyse bu düzenlemeler ile beraber konuda belirttiği düzenlemeleri de yapması gerekebilir. @Debloat mariadb sürümü nedir?


Denedikten sonra bilgi verirseniz sevinirim. Böyle durumlarda ders videolarının altına notlar düşmek gerekiyor.
10.5.13 son sürüm şuanda beta versiyon felan kullanmıyorsa dediklerim çalışır durumda yinede kullanıcı test ettikten sonra yazarsa daha iyi olur. Eğer çözülmez ise bana discorddan ulaş beraber bi karşılaştıralım mariadb dosyalarımızı. MEKA#0001
 
Evet şu an pkg'deki son sürüm 10.5 ve onu kullanıyorum. Web sitelerinde 10.6 var stabil ancak pkg'ye eklenmemiş. Deneyince yorumu editleyeceğim.

@Trashy @Whistle hocam dediğiniz yötemi uygulayınca bu hatayı verdi:

Screenshot_1.png


Bu sorunu da şöyle hallettim:

/usr/local/include/mysql dizinine git

Yeni link oluştur.

Link adı: psi
Link adresi: /usr/local/include/mysql/server/mysql/psi

Yani dediğiniz gibi çalışıyor. Kod düzenlemeye gerek yokmuş. Include'ları değişip yeni bir link oluşturmak yeterliymiş. Tekrar konuyu editliyorum.
 
Son düzenleme:
Geri
Üst