Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

SQL Server 2000: Konflikte beim Zugriff auf Datensätze

Frage Entwicklung Datenbanken

Mitglied: tschroeder

tschroeder (Level 1) - Jetzt verbinden

15.03.2006, aktualisiert 05.04.2006, 4780 Aufrufe, 2 Kommentare

Hallo,

ich habe eine Frage zum DB-Zugriff (speziell beim SQL Server 2000 Enterprise).

Sowohl bei Schreib- als auch bei Lesezugriffen gibt es immer wieder Konflikte.
Heißt: sowohl Schreib- als auch Lese-Operationen können nicht durchgeführt werden.

Bei den Schreibzugriffen kommt es zu Konflikten.
Bei den Lesezugriffen zu häufigen Timeouts.

Die Tabellen stehen im Zugriff sowohl von "außen" (Webserver IIS/FTP-Server WS_FTP) als auch von "innen" (VB-Anwendungen, ADO/DAO bzw. OLE DB/ODBC).
Es ist, was die Anzahl der gleichzeitigen Zugriffe betrifft, praktisch kaum eine verlässliche Obergrenze vorhanden.

Heißt: ich muss mit allem rechnen, also, dass x Zugriffe (Lese- und Schreiboperationen) gleichzeitig durchgeführt (besser: angestoßen) werden.
Das gilt nicht nur für Tabellen, sondern auch für einzelne Datensätze.

Was sollte ich bei der Anwendungsentwicklung (ASP "alt", also mit VBScript, ASP.NET, VB, Access VBA usw. usw.) unbedingt beachten, um Schreibkonflikte bzw. Timeouts zu verhindern?

Was sollte ich auf jeden Fall VERMEIDEN?

In welchen Bereichen gibt es grundsätzlich Optimierungspotenzial, was die Performance von SQL-Statements angeht
(Dinge, an die man bei der Entwicklung vielleicht aus Zeitmangel oder aus Nachlässigkeit nicht denkt, bspw. im Bereich Gestaltung von Tabellen/Ausführen von Abfragen aus dem Programmcode)?

Gruß

Thomas
Mitglied: 25768
01.04.2006 um 15:27 Uhr
Hi,

frag mich nicht über MS SQL, aber allgemein kann ich dir folgendes raten:

1. Benutze eine transaktionsfähige Datenbank, also eben z.B. MS SQL. Setze dich mit BEGIN/COMMIT/ROLLBACK auseinander.
2. Setze dich mit Tabellen und Row LvL Locking auseinander, so verhinderst du z.B. gleichzeitigen Schreibzugriff

Vermeiden ?
Einfach so drauf los zu arbeiten. Du hast gesagt du kannst nicht sagen, wieviele Benutzer gleichzeitig auf der Datenbank sind. Du solltest dir darüber aber im klaren werden, zumindest einen ca. Wert annehmen und dann 20-30% Performance draufrechnen als Sicherheit. Es helfen die optimiertesten Queries nichts, wenn der Server mit der Benutzeranzahl nicht klarkommt. Mach dir dann evtl. Gedanken über Cluster etc. Über Performanceoptimierung der Queries solltest du normalerweise etwas in der Dokumentation finden. Leg mich da nicht fest, wie gesagt, habs mit MS SQL ned so.

Ansonsten eben Standardoptimierungen nutzen wie z.B, Joins anstatt Subqueries etc.

Hoffe ich konnte dir ein bißchen helfen.
Gruß
Andi
Bitte warten ..
Mitglied: tschroeder
05.04.2006 um 07:02 Uhr
Hi Andi,

alles klar. Vielen Dank.

Der MS SQL wird bereits geclustert, allerdings nur in einer Failover-Lösung (bringt also nix in Sachen Lastenverteilung).

Ich suche übrigens auch noch nach Tools, um die Performance/Belastung auf Dauer zu protokollieren.

Gruß

Thomas
Bitte warten ..
Ähnliche Inhalte
Datenbanken
gelöst Access 2010 SQL Tabellen Datensätze einfügen (6)

Frage von Dr.Cornwallis zum Thema Datenbanken ...

Datenbanken
SQL 2000 DB ist Fehlerverdächtig (3)

Frage von franksig zum Thema Datenbanken ...

Neue Wissensbeiträge
Viren und Trojaner

FinFisher: Internetprovider schieben Spitzelopfern Malware unter

(1)

Information von kaiand1 zum Thema Viren und Trojaner ...

Humor (lol)

Wo ist der Fehler auf dem Bild?

(17)

Information von the-buccaneer zum Thema Humor (lol) ...

Windows Update

Offenbar erneutes MS-Update mit Fehlerschleife (2012 R2)

Information von VGem-e zum Thema Windows Update ...

Heiß diskutierte Inhalte
Lizenzierung
Programm soll in verschiedenen Versionen lizenziert sein (20)

Frage von Yanmai zum Thema Lizenzierung ...

Humor (lol)
Wo ist der Fehler auf dem Bild? (17)

Information von the-buccaneer zum Thema Humor (lol) ...

Virtualisierung
Unterschied zwischen VDI und Terminal Server Lösungen (13)

Frage von tukawi06 zum Thema Virtualisierung ...