Odmowa dostępu do CREATE DATABASE w bazie danych „master”. nie można uzyskać pozwolenia


17

Tworzę bazę danych na serwerze sql i pokazuje błąd, "CREATE DATABASE permission denied in database 'master'" że używam samego loginu administratora. Co muszę zrobić? Proszę o propozycję naprawy!

To jest zrzut ekranu i komunikat o błędzie, który otrzymałem podczas tworzenia bazy danych na serwerze SQL 2008


Czy korzystasz z logowania administratora Windows lub administratora SQL Server? Jeśli to pierwsze, niekoniecznie oznacza to, że administrator systemu Windows jest automatycznie administratorem programu SQL Server. Czy możesz spróbować za pomocą konta sa?
— Lmu92

Odpowiedzi:


12

Użytkownik musi być członkiem dbcreatorroli serwera, aby mieć wystarczające uprawnienia do utworzenia bazy danych.

Możesz wykonać następującą instrukcję, aby użytkownik został członkiem dbcreatorroli serwera.

EXEC master..sp_addsrvrolemember @loginame = N'Shubhankar', @rolename = N'dbcreator'
GO

Członkowie sysadminroli są domyślnie członkami dbcreatorroli serwera, dlatego też mogą tworzyć bazy danych.


Użytkownik nie ma uprawnień do wykonania tej akcji.
— Christine

@Hill, musisz poprosić DBA o dodanie twojego w prawidłowej roli serwera.
— M.Ali

sp_addsrvrolememberjest w trybie konserwacji i nie należy go już używać, a raczej użytkownika alter server role, np alter server role dbcreator add member [domain\user]. Zobacz Dokumenty SQL Server: sp_addsrvrolemember .
— Triamus

1

Aby utworzyć bazę danych, musisz mieć uprawnienia użytkownika sysadmin . Przejdź do bazy danych-> Bezpieczeństwo -> sekcja Logowanie w eksploratorze obiektów i edytuj właściwości użytkownika, którego uprawnienia chcesz utworzyć. W sekcji Role serwera można znaleźć sysadmin . Zaznacz to i zapisz użytkownika. Teraz będziesz miał dostęp do tworzenia bazy danych.

W celach informacyjnych: http://social.msdn.microsoft.com/Forums/sqlserver/en-US/76fc84f9-437c-4e71-ba3d-3c9ae794a7c4/sql-express-2008-r2-create-database-permission-denied-in -database-master? forum = sqlexpress


0

Wszystkie powyższe punkty są jasne, ale brakuje jednego. Z trudem znalazłem rozwiązanie tego problemu i wreszcie dostałem go po długich badaniach.

Aby uzyskać pozwolenie na utworzenie bazy danych na koncie lokalnym, wykonaj poniższe kroki.

Krok 1: Odłącz się od konta lokalnego.

Krok 2: Ponownie połącz się z serwerem za pomocą loginu: sa i hasła: pwd (pwd nadany lokalnemu loginowi).

Krok 3: Eksplorator obiektów -> Bezpieczeństwo -> Logowania -> Kliknij prawym przyciskiem myszy nazwę swojego serwera -> Właściwości -> Role serwera -> sysadmin -> OK

Krok 4: Odłącz i połącz się z lokalnym loginem i utwórz bazę danych.

Pomyślnie utworzono bazę danych: D;)


0

Miałem ten sam problem, zauważyłem, że jestem połączony za pomocą uwierzytelniania systemu Windows . Następnie rozłączyłem się i użyłem uwierzytelniania programu SQL Server . Zaczęło się dobrze.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.