[SQL Server] Divers Requêtes pour Administration 2
--vérifier l'existance d'une BD
USE master
SELECT * FROM sys.databases WHERE NAME LIKE 'MaBase%'
ORDER BY NAME
--Changer le propriétaire de la base
USE [MaBase]
GO
EXEC dbo.sp_changedbowner @loginame =N'sa'
GO
--Vérifier si les logins sont bien mappés
--Si la colonne LoginName est NULL, le username n'est pas mappé
sp_helpuser
--Afficher les informations d'une Base de données
sp_helpdb 'MaBase'
--Afficher le pourcentage d'utilisation des logs
IF EXISTS(SELECT * FROM tempdb..sysobjects WHERE id =object_id(N'[tempdb]..[#Resultat]'))
BEGIN
DROP TABLE #Resultat
END
CREATE TABLE #Resultat
(
DatabaseName varchar(100)
, LOGSIZE_MB decimal(18, 9)
, LOGSPACE_USED decimal(18, 9)
, LOGSTATUS decimal(18, 9))
INSERT INTO #Resultat(DatabaseName, LOGSIZE_MB, LOGSPACE_USED, LOGSTATUS)
EXEC ('DBCC sqlperf(logspace)')
SELECT * FROM #Resultat
SELECT size*8192.0/1024.0/1024.0 as SizeMegabytes FROMsys.database_files
WHEREtype_desc='LOG'
--Afficher la liste des sessions sur le serveur
EXEC sp_who
--Afficher la requete lancer dans la session numéro 141
DBCC INPUTBUFFER(141)
--Afficher le pourcentage d'avancement d'un process SQL
SELECT session_id,percent_complete FROMsys.dm_exec_requestsWHERE session_id =141
--afficher la liste des fichiers pour la base MaBase
SELECT DB_NAME(database_id) AS nom_base,* FROM sys.master_files where database_id=DB_ID('MaBase')
--Liste des precess connectés vers la base MaBase
SELECT * FROM sysprocesses WHERE dbid=DB_ID('MaBase')
--Afficher le journal de LOGS de SQL Server
xp_readerrorlog
/* Traitement sur des backups SQL Server */
--Vérifier l'état d'une sauvegarde
RESTORE VERIFYONLY FROM DISK='\\ServeursFichiers\MesBackups\MaBase_FULL_20181116_204745.bak';
--Retourne un jeu de résultats avec une liste des fichiers journaux et des fichiers de base de données contenus dans le jeu de sauvegarde SQL Server.
RESTORE FILELISTONLY FROM DISK='\\ServeursFichiers\MesBackups\MaBase_FULL_20181116_204745.bak';
--renvoyer les informations contenues dans l'en-tête pour le fichier de disque
RESTORE HEADERONLY
FROM DISK='\\ServeursFichiers\MesBackups\MaBase_FULL_20181116_204745.bak';
GO
/*********---Certaines commandes à lancer pour pouvoir dropper la base *****/
--Mettre la base en utilisateur unique
ALTER DATABASE MaBase SET SINGLE_USER WITH ROLLBACK IMMEDIATE
--Mettre la base hors ligne pour fermer toutes les sessions sur la base
ALTER DATABASE MaBase SET OFFLINE WITH ROLLBACK IMMEDIATE
--Mettre la base en ligne pour pouvoir la supprimer
ALTER DATABASE MaBase SET ONLINE
--Supprimer la base
DROP DATABASE MaBase