Datenbankadministratoren

Fragen und Antworten für Datenbankexperten, die ihre Datenbankfähigkeiten verbessern und von anderen in der Community lernen möchten

1
sp_prepexec (sp_execute) vs. sp_executeSQL
Das Kernstück der Frage: Sind tatsächlich gespeicherte Prozeduren der einzige Mechanismus, der das Zwischenspeichern von temporären Tabellen implementiert, oder nutzen gespeicherte Systemprozeduren wie sp_executeSQL/ sp_executeauch diese? Ich bin kein DBA, bitte verwenden Sie kleine Wörter. Unsere Anwendung sendet über vorbereitete Anweisungen , die vom Profiler, ich laufe sehen Sie alle …




1
Verwendete TCP-Ports des Datenbankspiegelungsprotokolls. Ein Standard, eine Dynamik?
Wenn Sie die folgende Abfrage auf dem primären / sekundären Replikat einer SQL Server Always On Availability Group ™ ausführen SELECT DISTINCT local_tcp_port,protocol_type,num_reads,num_writes FROM sys.dm_exec_connections WHERE local_net_address is not null; Zwei lokale TCP - Ports zeigen sich für die Datenbankspiegelung Protokoll 5022&63420 Server Name local_tcp_port protocol_type num_reads num_writes ServerName 5022 …

1
Der Datenbank-Cache-Speicher im Leistungsmonitor sinkt nach DBCC CheckDB erheblich
Wir haben einige SQLServer: Memory ManagerMetriken überwacht und festgestellt, dass nach dem DBCC CheckDBJob Metriken Database Cache Memory (KB) fällt deutlich ab. Um genau zu sein, wurde der zwischengespeicherte DB-Speicher von 140 GB auf 60 GB reduziert. Und danach während der Woche langsam wieder hochfahren. (Menge von " Free Memory …

3
Verwenden von SPID in DB-Tabellen (anstelle von Tabellenvariablen)
Transaktionsdatenbank für die Buchung von Dingen ... Unser Anbieter wurde gebeten, #temptables durch @tablevariables zu ersetzen (aufgrund schwerer Kompilierungssperren). Stattdessen wurde er durch eine tatsächliche Tabelle ersetzt, die SPID als Spalte hinzufügt, um sicherzustellen, dass die gespeicherte Prozedur nur auf die entsprechenden Zeilen wirkt. Sehen Sie ein Risiko bei dieser …

2
Warum verwendet dieser rekursive CTE mit einem Parameter keinen Index, wenn er mit einem Literal arbeitet?
Ich verwende einen rekursiven CTE für eine Baumstruktur, um alle Nachkommen eines bestimmten Knotens im Baum aufzulisten. Wenn ich einen Literalknotenwert in meine WHEREKlausel schreibe , scheint SQL Server den CTE tatsächlich nur auf diesen Wert anzuwenden, wodurch ein Abfrageplan mit geringen tatsächlichen Zeilenzahlen usw. erstellt wird : Wenn ich …


2
Deckungsindex trotz fehlender Spalte verwendet
Ich habe die folgende Abfrage mit MariaDB 10 / InnoDB: SELECT id, sender_id, receiver_id, thread_id, date_created, content FROM user_message WHERE thread_id = 12345 AND placeholder = FALSE ORDER BY date_created DESC LIMIT 20 Diese Abfrage ruft Nachrichten gemäß den angegebenen Bedingungen ab und sortiert sie nach dem Erstellungsdatum. Ich habe …

1
initdata: Kein Speicher für Kernel-Puffer
Ich habe kürzlich meine SQL Server 2017 Developer Edition unter RedHat Enterprise Linux 7.6 auf SQL Server 2019 CTP 3.0 aktualisiert. Der mssql-Server-Dienst wird nicht mehr gestartet. / var / opt / mssql / log / errorlog zeigt Folgendes: 2019-06-12 09: 36: 31.98 Server Microsoft SQL Server 2019 (CTP3.0) - …

3
XML-Abfragefrage
Ich versuche, eine SQL-Abfrage zu generieren, um die "DATE" -Werte aus dem folgenden SQL-XML zu erhalten: Ich habe so etwas versucht, aber ich glaube nicht, dass ich die Konzepte verstehe. select xConfig.value('(/SearchjobConfig/QueryString/SearchCriteria/ExpressionSet/SimpleAttributeExpression) [1]','nvarchar(max)') from Job Hier ist das XML als Text: <SearchJobConfig> <QueryID>1072</QueryID> <QueryString> <SearchCriteria name="Search query" > <ExpressionSet logicalOperator="AND"> …




Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.