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


źródło
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.

M.Ali
źródło
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

Anoop
źródło
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;)

użytkownik103167
źródło
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.

Baqer Naqvi
źródło