I'm rozwija prostą aplikację C#, I'd chciałbym to wiedzieć: Kiedy łączę moją aplikację z serwerem SQL na moim komputerze, znam ciąg połączenia (nazwa serwera, hasło itp.), Ale kiedy podłączam go do innego komputera, ciąg połączenia z serwerem SQL jest inny. Czy istnieje wspólne konto w SQL Server, które jest domyślnym kontem, które może się połączyć? Słyszałem o koncie sa
w SQL Server, co to jest sa
?
Jest kilka rzeczy, o które należy się martwić łącząc się z SQL Server na innym komputerze.
Bardzo często serwer SQL może być uruchomiony jako domyślna instancja, co oznacza, że możesz po prostu określić nazwę hosta/adres IP, ale możesz spotkać się ze scenariuszem, w którym jest on uruchomiony jako nazwana instancja (np. Sql Express). W takim przypadku należy podać nazwę hosta/nazwę instancji.
Musisz zrozumieć, że serwer bazy danych lub DBA nie chciałby, aby ktokolwiek mógł się do niego podłączyć lub modyfikować jego zawartość. To jest właśnie cel istnienia kont bezpieczeństwa. Jeśli pojedyncza nazwa użytkownika/pwd działałaby na każdej maszynie, nie zapewniałaby żadnej ochrony. To "sa", o którym słyszałeś, nie działa z SQL Server 2005, 2008 lub 2012. Nie jestem pewien co do poprzednich wersji. Wydaje mi się, że gdzieś we wczesnych dniach SQL Server, domyślną nazwą użytkownika i pwd była sa/sa, ale to już nie jest prawdą.
FYI, bezpieczeństwo bazy danych i role są teraz dużo bardziej skomplikowane. Możesz chcieć zapoznać się ze szczegółami uwierzytelniania opartego na systemie Windows. Jeśli twój SQL Server jest skonfigurowany do tego, nie potrzebujesz żadnej nazwy użytkownika/pwd w łańcuchu połączenia, aby się z nim połączyć. Wszystko, co musisz zmienić, to nazwa maszyny serwera, a ten sam ciąg połączenia będzie działał na obu maszynach, oczywiście biorąc pod uwagę, że obie mają tę samą nazwę db.
Możesz użyć zarówno uwierzytelnienia Windows, jeśli serwer jest w domenie, jak i uwierzytelnienia Sql. Sa - jest administratorem systemu, konto root dla uwierzytelniania serwera SQL. Jest to jednak zła praktyka, aby używać go do łączenia się z klientami. Powinieneś stworzyć swoje własne konta i używać ich do łączenia się z SQL. W każdym połączeniu ustawiamy login konta, jego hasło oraz domyślną bazę danych, do której chcemy się podłączyć.