ÖNEMLİ: Bu makale, bir kişi tarafından çevrilmek yerine, Microsoft makine-çevirisi yazılımı ile çevrilmiştir. Microsoft size hem kişiler tarafından çevrilmiş, hem de makine-çevrisi ile çevrilmiş makaleler sunar. Böylelikle, bilgi bankamızdaki tüm makalelere, kendi dilinizde ulaşmış olursunuz. Bununla birlikte, makine tarafından çevrilmiş makaleler mükemmel değildir. Bir yabancının sizin dilinizde konuşurken yapabileceği hatalar gibi, makale; kelime dağarcığı, söz dizim kuralları veya dil bilgisi açısından yanlışlar içerebilir. Microsoft, içeriğin yanlış çevrimi veya onun müşteri tarafından kullanımından doğan; kusur, hata veya zarardan sorumlu değildir. Microsoft ayrıca makine çevirisi yazılımını sıkça güncellemektedir.
Bu makale arşivlenmiştir. "Olduğu gibi" sunulmaktadır ve bundan sonra güncelleştirilmeyecektir.
Belirtiler
Aşağıdaki koşullarda, Microsoft SQL Server 2000 Data Engine (MSDE 2000) yeni bir yüklemesini SqlConnection nesnesine açmaya çalışırsanız, bir SqlException özel olarak durum:
SQL Server kimlik doğrulaması kullanıyor.
Varsayılan boş parola ile yerleşik SA hesabı kullanıyorsunuz.
Bir try-catch bloğu içinde özel durum yakalandı, aşağıdaki hata iletisini alırsınız:
Işlenmeyen bir özel durum türü 'System.Data.SqlClient.SqlException' içinde system.data.dll oluştu.
Ek bilgi: sistem hatası.
Özel durum try-catch bloğu tarafından yakalanan iletiler, aşağıdaki hata iletisini alırsınız:
Oturum açma 'sa' kullanıcısı için başarısız oldu. Neden: güvenilen bir SQL Server bağlantısı ile ilişkili değil.
Neden
MSDE 2000 için varsayılan kimlik doğrulama modu Windows olduğunu doğrulama. MSDE 2000, yerleşik Sistem Yöneticisi (SA) kullanıcı hesabı ile yükler. Ancak, SQL Server kimlik doğrulaması varsayılan olarak devre dışı olduğundan, normal bir yükleme sonrasında yerleşik hesabın erişemiyor.
Çözüm
SQL kimlik doğrulaması'nı etkinleştirmek için <a0></a0>, aşağıdaki yöntemlerden birini kullanın:
SQL etkinleştirmek için aşağıdaki komut satırı anahtarını kullanan kimlik doğrulama sırasında yükleme:
SECURITYMODE SQL =
Kayıt defterinin, yüklemeden sonra düzenleyin.
Her iki yöntem yapmak hakkında daha fazla bilgi için Microsoft Knowledge Base'deki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
285097Nasıl yapılır: Windows ınstaller'ı kullanarak SQL Server 2000 Desktop Engine'i yüklenirken, varsayılan oturum açma kimlik doğrulama modu için SQL değiştirme
Not Windows NT kimlik doğrulamasını SQL kimlik doğrulaması için varsayılan oturum açma kimlik doğrulama modu değiştirdiğinizde, sa parolasının güçlü bir parola değiştirmenizi öneririz.
SQL Server sa değiştirme hakkında daha fazla bilgi için parola Microsoft Knowledge Base'deki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
322336Nasıl doğrulayın ve SQL Server 2005 Express Edition ya da MSDE Sistem Yöneticisi parolasını değiştirme
Durum
Bu davranış tasarım yüzündendir.
Daha fazla bilgi
Microsoft SQL Server ve MSDE 2000 olarak aynı ağ üzerinde yüklü değilse ve ağınızdaki bir NT etki alanı kullanıyorsanız, karma modu kimlik doğrulaması'nı etkinleştirmek için ve MSDE 2000 örneğine bağlanmak için SQL Server Enterprise Manager yardımcı programını kullanmanız mümkün olabilir.
Boş bir parolayla yerleşik kullanıcı hesabını devre dışı bırakarak, MSDE 2000 varsayılan bir yüklemeden sonra daha güvenli tutulur. SQL Server kimlik doğrulamasını etkinleştirirseniz, güvenlik sisteminizin hemen SA hesabı parolasını oluşturmak önemlidir. Bunu yapmak için <a0></a0>, MSDE 2000'le yüklenen osql komut satırı yardımcı programının sp_password saklı yordamı kullanabilirsiniz. Daha fazla bilgi için, bu makalenin "Başvurular" bölümüne bakın.
Davranışı Yeniden Oluşturma Adımları
Varsayılan yüklemesini MSDE 2000'i yükleyin. Herhangi bir komut satırı anahtarları, varsayılan kimlik doğrulama modunu değiştirmek için kullanmayın.
Microsoft Visual Studio .NET'i başlatın.
Dosya menüsünde Yeni ' nin üzerine gelin ve sonra Project ' i tıklatın.
Visual Basic ProjectsProject Types altında tıklatın, şablonları altında Windows uygulaması ' ı tıklatın, AuthenticationTest <a2>ad</a2> kutusuna yazın ve Tamam ' ı tıklatın.
Aşağıdaki ifadeyi Form1.vb en üstüne ekleyin:
Imports System.Data.SqlClient
Bir <a0>Form1_Load</a0> olay işleyicisi oluşturmak için Form1 ' ı çift tıklatın ve sonra da işleyicisine aşağıdaki kodu ekleyin:
Try Dim conn As New SqlConnection("server=yourserver;uid=sa;database=master") conn.Open() If (conn.State = ConnectionState.Open) Then MessageBox.Show("Connection opened successfully") End If conn.Close()Catch ex As SqlException MessageBox.Show(ex.Message)End Try
MSDE 2000 örneğine bağlanmak için SqlConnection nesnesinin bağlantı dizesini değiştirin.
Derlemeye ve kod çalıştırmak için F5 tuşuna basın. Bildirim, aşağıdaki hata iletisini alırsınız:
Oturum açma 'sa' kullanıcısı için başarısız oldu. Neden: güvenilen bir SQL Server bağlantısı ile ilişkili değil.
ÇÖZÜM
"Çözüm" olarak listelenen yöntemlerden birini kullanarak karma modu kimlik doğrulaması'nı etkinleştirmek için bu makalenin bölümünde. Karma modu kimlik doğrulaması hem Windows kimlik doğrulaması, hem de SQL Server kimlik doğrulaması sağlar.
Yerleşik SA kullanıcı hesabının parola olmadan yüklü olduğundan, hemen SQL Server kimlik doğrulaması'nı etkinleştirdiğinizde, bu hesap için bir parola oluşturmanız gerekir. Yerleşik SA için bir parola oluşturmak için hesap için şu adımları izleyin:
Bu işlem sizi SA hesabını kullanarak MSDE 2000'in yerel, varsayılan örneğine bağlar.
Aşağıdaki komutları ayrı satırlara yazın ve ENTER tuşuna basın:
Not: ' mynewpassword ' yeni parolayla değiştirmek emin olun.
null sp_password ' mynewpassword ', 'sa'
go
Parola başarıyla değiştirildi belirten aşağıdaki iletiyi alırsınız dikkat edin:
Password changed.
Yeni parolanızı, bağlantı dizesine ekleyin. Form1.vb aşağıdaki kod satırını bulun:
Dim conn As New SqlConnection("server=yourserver;uid=sa;database=master")
parolanızı, bağlantı dizesi olarak "yournewpassword" önceki adımda oluşturduğunuz parolayı olduğu, aşağıdaki gibi Ekle:
Dim conn As New SqlConnection("server=yourserver;uid=sa;pwd=yournewpassword;database=master")
Derlemeye ve kod çalıştırmak için F5 tuşuna basın. SQL Server bağlantısı başarılı oldu hangi durumları BIR iletişim kutusu görüntülenir.
Referanslar
Microsoft Desktop Engine'e bağlanma hakkında daha fazla bilgi için Microsoft Knowledge Base'deki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
319930Nasıl yapılır: bir SQL Server Desktop Edition veya SQL Server 2005 Express Edition bağlanın
Kur için SQL Server 2000 Desktop Engine'i özelleştirme, Windows ınstaller'ı kullanma hakkında daha fazla bilgi için Microsoft Knowledge Base'deki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
227091Microsoft Windows ınstaller aracı için komut satırı anahtarları
Daha fazla bilgi için, Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın: