zettelkasten/OneNoteExport/Technik/SQL/00_Schulung SQL QSC 02.2017.md
2023-08-17 19:32:37 +02:00

3.7 KiB

Schulung SQL QSC 02.2017

Freitag, 26. Februar 2016

21:02

Inntaus null Fabian Bader:

 

http://msdn.microsoft.com/en-us/library/bb510741.aspx

 

System Datenbanken :

Model

MSDN

Tempdb

Master DB

 

Resource -> ist nicht sichtbar

 

 

SQL Sprache ist TSQL

 

Bei anlage einer neuen Datenbank owner ändern :

 

USE [RKOtestdb]

GO

EXEC dbo.sp_changedbowner @loginame = N'sa_vbz', @map = false

GO

 

x64 SQL Alias erstellen

C:\Windows\System32\cliconfg.exe aufrufen

Im "Alias" Tab "Selcet" ausählen

Unter "Server alias" wird nun der gewünschte SQL Alias Name eingetragen (z.B. MeinSQLAlias)

"TCP/IP" unter "Network libraries" auswählen

Im Feld "Server name" den NetBIOS Namen (z.B. SERVERNAME\INSTANCE) des SQL-Servers eingetragen.

"Dynamically determine port" ausgewählt lassen.

Es wird folgender Registry Key erstellt

HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\MSSQLServer\\Client\\ConnectTo

"MeinSQLAlias"="DBMSSOCN,SERVERNAME\\INSTANCE"

x86 SQL Alias erstellen (Kompatibilität mit 32-Bit Applikationen)

C:\Windows\SysWOW64\cliconfg.exe aufrufen

Im "Alias" Tab "Selcet" ausählen

Unter "Server alias" wird nun der gewünschte SQL Alias Name eingetragen (z.B. MeinSQLAlias)

"TCP/IP" unter "Network libraries" auswählen

Im Feld "Server name" den NetBIOS Namen (z.B. SERVERNAME\INSTANCE) des SQL-Servers eingetragen.

"Dynamically determine port" ausgewählt lassen.

Es wird folgender Registry Key erstellt

HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\Microsoft\\MSSQLServer\\Client\\ConnectTo

"MeinSQLAlias"="DBMSSOCN,SERVERNAME\\INSTANCE"

 

Aus <https://www.techtask.com/sql-alias-fur-sharepoint-web-applikationen-erstellen/>

 

Xp_cmdshell (Security issue)

 

exec sp_configure 'show advanced option',1

go

exec sp_configure 'xp_cmdshell', 0 deaktiviert die Shell

go

Reconfigure;

 

-- Daten eines Linked Servers abrufen : (Lokaler Server QSCDBT020 Linked ( Remote ) Server QSCDBT010)

select * from [QSCDBT010\QSCDBT010J].[datenaustausch_rko].sys.database_files

 

-- Noch ein Beispiel :

select *

from [QSCDBT070\QSCDBT070J].[TrainerDB_LinkedServer].[dbo].[Teilnehmer]

 

 

--(Hierfür muss RPC und RPC OUT in den Properties des Linked Servers Aktiviert werden.)

execute [QSCDBT070\QSCDBT070J].[TrainerDB_LinkedServer].[dbo].[coole_sp]

 

Create Service Account

https://www.mssqltips.com/sqlservertip/2503/how-to-create-secure-sql-server-service-accounts/

 

 

Troubleshooting :

 

Backup Datei ist immer eine .BAK datei.

In einer BAK Datei können mehrere Backup stände vorhanden sein.

Mit dem SQL Statement:

restore headeronly from Disk=N'j:\sql\backups\master.bak';

 

kann man sich den Inhalt der BAK Datei anzeigen, bzw ermitteln wie viele Backups es in der Datei gibt.

 

Für die Master DB restore muss der Server im Single User Mode sein. Hierzu den Sql Service stoppen und die CMD verwenden :

 

sqlservr.exe" -m -s qscdbt020j Startet den Single User Mode

In einer 2.ten CMD dann :

osql -S qscdbt020\qscdbt020j -E Startet die SQL CMD Line

 

 

 

Aktives Monitoring mit

Aktive Monitor (Rechte Maus auf Server dann kommt der punkt.)

Oder SQL Abfrage mit

 

exec sp_WhoIsActive; NEU mehr INfos

 

Oder exec sp_WhoIs2 --- ALT

Oder exec sp_WhoIs --- SEHR ALT

 

Geht auch über Perfmon und Ressourcemonitor aus Windows.

Perfmon ist besser, Ressourcemonitor benötigt selber viele Ressourcen

 

 

Ermitteln wieviel "Speicher" der SL Server wirklich nutzt :

 

select * from sys.dm_os_process_memory

 

Im Taskmanager werden aber nur zb 2GB angezeigt, trotzdem nutzt der SQL Server wesentlich mehr.

Hierzu wird die Funktion AWE genutzt. Im Error Log schuen nach in "Use Lock Pages in Memory"