Quantcast
Channel: Forum Getting started with SQL Server
Viewing all articles
Browse latest Browse all 7129

How to run queries on 47 SQL Servers

$
0
0

I have to run following queries on 47 SQL Servers, how can I run them on so many servers?

Thank you.

=========================================================================

Courtesy of Ashwin Menon:

select name from sys.server_principals where type in ('S', 'U','G')


sp_msforeachdb 'use ? select ''?'' , name as "User" from sys.database_principals where type in(''S'',''U'',''G'')'

=========================================================

Courtesy of Prashanth:

 

DECLARE @DBuser_sql VARCHAR(4000)
DECLARE @DBuser_table TABLE
(
DBName VARCHAR(200),
UserName VARCHAR(250),
LoginType VARCHAR(500),
AssociatedDatabaseRole VARCHAR(200)
)
SET @DBuser_sql='
SELECT "?" AS DBName,a.name AS Name,
a.type_desc AS LoginType,
USER_NAME(b.role_principal_id) AS AssociatedDatabaseRole
FROM ?.sys.database_principals a
LEFT OUTER JOIN ?.sys.database_role_members b ON a.principal_id=b.member_principal_id
LEFT OUTER JOIN ?.sys.server_role_members c ON a.principal_id=c.member_principal_id and a.principal_id=c.member_principal_id
WHERE a.sid NOT IN (0x01,0x00) AND a.sid IS NOT NULL AND a.type NOT IN ("C")
AND a.is_fixed_role <> 1 AND a.name NOT LIKE "##%" AND "?" NOT IN ("master","msdb","model","tempdb")
ORDER BY Name'
INSERT @DBuser_table
EXEC sp_MSforeachdb @command1=@dbuser_sql
SELECT DBName,UserName,LoginType,
max(casewhenAssociatedDatabaseRole='db_owner'then'1'else'0'end)'db_owner',
max(casewhenAssociatedDatabaseRole='db_securityadmin'then'1'else'0'end)'db_securityadmin',
max(casewhenAssociatedDatabaseRole='db_accessadmin'then'1'else'0'end)'db_accessadmin',
max(casewhenAssociatedDatabaseRole='db_backupoperator'then'1'else'0'end)'db_backupoperator',
max(casewhenAssociatedDatabaseRole='db_ddladmin'then'1'else'0'end)'db_ddladmin',
max(casewhenAssociatedDatabaseRole='db_datareader'then'1'else'0'end)'db_datareader',
max(casewhenAssociatedDatabaseRole='db_datawriter'then'1'else'0'end)'db_datawriter',
max(casewhenAssociatedDatabaseRole='db_denydatawriter'then'1'else'0'end)'db_denydatawriter',
max(casewhenAssociatedDatabaseRole='db_denydatareader'then'1'else'0'end)'db_denydatareader',
max(casewhenAssociatedDatabaseRoleis NULL then'1'else'0'end)'No Roles'
FROM @DBuser_table
groupbyDBName,UserName,LoginType
 
----ServerRoles
 
SELECT sp.name AS LoginName,sp.type_desc AS LoginType, sp.default_database_name AS DefaultDBName,slog.sysadmin AS SysAdmin,slog.securityadmin AS SecurityAdmin,slog.serveradmin AS ServerAdmin, slog.setupadmin AS SetupAdmin, slog.processadmin AS ProcessAdmin, slog.diskadmin AS DiskAdmin, slog.dbcreator AS DBCreator,slog.bulkadmin AS BulkAdmin
FROM sys.server_principals sp JOIN master..syslogins slog
ON sp.sid=slog.sid


Viewing all articles
Browse latest Browse all 7129

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>