SambaPOS Forum
Türkçe Bölümler => Yardımlaşma => Topic started by: Hilmi Hami on May 14, 2013, 07:34:57 am
-
Merhaba,
bugün program açıkken bilgisayar yanlışlıkla kapandı. Daha sonra da program açılmamaya başladı. Verdiği hata: şu anki bağlantı ayarlarıyla veri tabanına bağlanamıyor.... Hata Mesajı:The provider did not return a ProviderManifestTokenString. "Ghetto; user id=sa; password=sambapos.1234;"
SQL den de database bağlanamıyor.
-
Management Studio ile bağlanmayı deneyin. Bir nedenle windows açılırken SQL Server başlamıyor olabilir.
-
SQL Server Configuration manager programında SQL Server Services'e bakıp SQLServer servisinin çalışıp çalışmadığını kontrol edin. ÇAlışmıyorsa sağ tuş ile start yapın
-
SQL sever configuration manager de SQL server stopped görünüyor. çalıştırmaya çalıştığımda da "the request failed or the service did not respond in a timely fashion" mesajı veriyor.
-
Account name: NT Service\MSSQLSERVER
-
SQL Server servisi başlatılamıyor ama nedenini anlamamız için bir hata mesajı falan görmek lazım.
Windows'un Event Log'u bir kontrol eder misiniz orada bir hata mesajı falan vardır muhtemelen.
-
Şöyle bir hata buldum:
The log scan number (44:80:1) passed to log scan in database 'model' is not valid. This error may indicate data corruption or that the log file (.ldf) does not match the data file (.mdf). If this error occurred during replication, re-create the publication. Otherwise, restore from backup if the problem results in a failure during startup.
-
Evet data corruption ya da log file does not match dediği olay veritabanı bozulmuş anlamına geliyor. Veritabanını repair etmeyi deneyebilirsiniz ama sonuçta bu işlem veritabanını çalışır hale getirse bile yine de veri kaybı olabilir. Hata mesajında da önerdiği gibi en son aldığınız yedeğe geri dönmeyi deneyebilirsiniz.
-
Nasıl yapacağımı yazabilirseniz çok sevinirim.
-
yani nasıl repair edebilirim son yedek 1 aylık.
-
Processi tam ezbere hatırlamıyorum ama Google Türkçe sayfalarda DBCC CHECKDB şeklinde aratırsanız resimli falan bir çok çözüm bulabilirsiniz.
-
EXEC SP_RESETSTATUS 'SambaData2';
ALTER DATABASE SambaData2 SET EMERGENCY
DBCC checkdb('SambaData2')
ALTER DATABASE SambaData2 SET SINGLE_USER WITH ROLLBACK IMMEDIATE
DBCC CheckDB ('SambaData2', REPAIR_ALLOW_DATA_LOSS)
ALTER DATABASE SambaData2 SET MULTI_USER
yukardaki kodu management studioda çalıştırmalısınız.
-
teşekkürler,
ancak sorun şu ki management studioda database'e bağlanmıyor. Sanırım server çalışmadığı için.
-
Sorunu şöyle çözdük.
- SQL Altındaki Data klasörünü başka bir yere kopyaladık.
- SQL'i kaldırıp tekrar kurduk
- Yeni Data klasörünün yedeğini alıp eski data klasörünü yenin içine attık
- SQL server yine çalışmadı.
- Kurulumdan sonra Oluşturduğumuz yeni Data klasörünü tekrar geri koyduk (Sambadata2.mdf ve Sambadata2_log.ldf dosyaları hariç tüm dosyalar yenilenmiş oldu)
- Server çalışmaya başladı.
- Sambapos açılışta Sambadata2.mdf ve Sambadata2_log.ldf dosyalar zaten var o yüzden oluşturamıyorum diye uyarı verdi.
- bu kez bu dosyaları kaldırıp sambaposun kendi oluşturmasına izin verdik. Sambapos çalıştı. :)
- Son oalrak Sambadata2.mdf ve Sambadata2_log.ldf dosyalarının eski yedeğini yenilerin üzerine yazdırdık... ve Vadaa... :)
Ne kadar sağlıklı bir yöntem bilemiyorum fakat, şimdilik herşey yerli yerinde görünüyor.
benzer sorun yaşayanlara yardımı olur diye yazayım dedim...
bugün ilk işim bir UPS almak. ve daha sık yedek almak.
İyi çalışmalar.
-
Bu forumda yeni birşeyler öğrendiğimde çok mutlu oluyorum. Teşekkürler geri bildirim için.
Başka hiç bir parametre vermeden sadece DBCC checkdb('SambaData2') komutunu çalıştırarak veritabanında bir problem olup olmadığını kontrol ettirebilirsiniz.
-
Tabii model başka anlama da geldiği için ilk anda dikkat etmemiştim ama sizin çözümünüzü okuduktan sonra sorunun nedenini daha iyi anladım. Sorun aslında sambapos veritabanında yani sambadata2.mdf dosyasında değilmiş. Sorun gönderdiğiniz hata mesajında da söylediği gibi "model" veritabanındaymış. Bu veritabanı SQL Server'in sistem bilgilerini tuttuğu veritabanlarından biri ve sql server'i başlatamayışınızın nedeni de bu. SQL Server'i yeniden yüklediğiniz zaman sistem veritabanları yenilendiği için problem çözülmüş oldu. Yani çözümünüz gayet yerinde olmuş.
Ama tabii SambaData2.mdf dosyası da bozulabilirdi. Elektirik kesintileri tüm veritabanı sistemleri için büyük bir problem çünkü tam veri yazarken işlemin yarıda kalması dosyaların ya da indexlerin bozulmasına neden olabiliyor. Düzenli yedek ve güç kaynağı çok iyi bir çözüm olacak. En azından gün ortasında hesaplara ulaşamamak gibi bir sorun yaşamazsınız.