2013-07-09 27 views
5

Tek kullanıcı veritabanı ve çoklu kullanıcı veritabanı arasındaki fark nedir? Neden tek bir kullanıcı veritabanını kullanmalıyım? neden yapıldı?Tek kullanıcı veritabanı vs çok kullanıcılı veritabanı

Aynı oturum açma kimlik bilgilerini kullanarak aynı veritabanına aynı anda erişen birden fazla iş parçacığım varsa, birden çok kullanıcı veritabanına ihtiyacım var mı?

cevap

6

Tek kullanıcı veritabanı ve çoklu kullanıcı veritabanı arasındaki fark nedir? Neden tek bir kullanıcı veritabanını kullanmalıyım? Neden yapıldı?

Tek kullanıcı modu, belirli bir anda veritabanına yalnızca bir bağlantı sağlar.

Bu soruyu SQLite olarak etiketlediğinizden, cevabı bu belirli bir motora dayandıracağım.

SQLite'nin eşzamanlılık koruma modeli, doğrudan dosya okumalarına dayanır ve diskteki veritabanı dosyasına yazar, dolayısıyla iki farklı program aynı anda bir diske aynı dosyaya yazamaz. SQLite, veritabanı dosyasına değişiklikler yapılırken ikinci sorguyu beklemeye zorlar.

SQLite, INSERTS ve UPDATES uygulandığında işletim sistemi dosya kilitlerini kullanarak dosya/veritabanı bozulmasına karşı koruma sağlar. Ancak, aynı anda birden fazla salt okunur tutamağa izin verir (tıpkı masaüstünüzde salt okunur olarak dosyayı aynı anda açabileceğiniz gibi, ancak değişiklikleri kaydedemeyeceğiniz gibi).

SQL Server gibi diğer veritabanlarında, tek kullanıcılı mod yalnızca veritabanı gereksinim duyduğunda kullanılır - bir yedek dosyasını geri yükleme, veritabanı yapısını değiştirme veya genel veritabanı ayarlarını değiştirme gibi.

Tekli kullanıcı modu, istemcilerin bu tür değişiklikler yaparken verileri okuyup yazmaya çalışamayacağınız için kullanışlıdır.

Ancak normal koşullarda, SQL Server'ı performans nedenleriyle tek kullanıcılı modda çalıştırmak istemezsiniz. Ancak, yüksek hacimli bir web servisiniz yoksa, SQLite muhtemelen diskte bir defada bir değişiklik olmasına rağmen performans gereksinimlerini karşılayacaktır.

Eğer ben kullanarak aynı anda aynı veritabanına erişen birden parçacığı aynı-log kimlik bilgilerini, ben birden fazla kullanıcı veritabanı gerekiyor?

Hayır, hala çalışır. Ve SQLite veritabanları hiç kimlik doğrulama gerektirmez, bunun için dosya/dizin izinleri dışında herhangi bir kimlik bilgisi yoktur.

İlgili konular