Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Trigger und Event Notifications im SQL Server 2005 Artus Krohn-Grimberghe Ehem. Student Partner Microsoft Student Program

Ähnliche Präsentationen


Präsentation zum Thema: "Trigger und Event Notifications im SQL Server 2005 Artus Krohn-Grimberghe Ehem. Student Partner Microsoft Student Program"—  Präsentation transkript:

1 Trigger und Event Notifications im SQL Server 2005 Artus Krohn-Grimberghe Ehem. Student Partner Microsoft Student Program

2 Microsoft SQL Server 2005 Architektur Komponenten des SQL Server 2005 RDBMS ETL Werkzeug OLAP Server Data Mining Reporting-DiensteManagement-ToolsEntwicklungs-Tools Analysis Services OLAP & Data Mining Integration Services ETL SQL Server Relational Engine Reporting Services Management Tools Development Tools

3 Agenda Aktive Komponenten DML- und DDL-Trigger Event Notifications Ausblick SQL Server 2008

4 Aktive Komponenten SQL Server Agent Jobs (Automatisierung) Alerts (Ereignis und Aktion) Trigger Event Notifications Declarative Management Framework (ab Katmai)

5 Agenda Aktive Komponenten DML- und DDL-Trigger Event Notifications Ausblick SQL Server 2008

6 DML- und DDL-Trigger Prozeduren, die bei Datenbankereignissen automatisch ausgeführt werden Laufen im Kontext des Auslösers ab (sind Teil der Transaktion, die sie ausgelöst hat) Können den Auslöser zurückrollen Werden nur einmal pro Befehl ausgeführt DML- und DDL- / LOGON-Trigger AFTER- und INSTEAD OF-Trigger T-SQL- und.NET-Trigger

7 Ausführung im Kontext Zurückrollen der Transaktion möglich Beim Zurückrollen entstehen doppelte Kosten, daher n.M. constraints (Datentyp, CHECK, DEFAULT, PK, FK, DRI) benutzen Berechtigungskontext beachten! CREATE TRIGGER trg1 ON dbo.tbl1 AFTER INSERT AS IF EXISTS(SELECT * FROM inserted WHERE col1 = ) ROLLBACK TRANSACTION

8 Verschachtelung und Rekursion Trigger können standardmäßig andere Trigger auslösen Trigger können sich selbst aufrufen (ALTER DATABASE SET RECURSIVE_TRIGGERS ON;)

9 AFTER Trigger inserted und deleted Spezialtabellen inserted: Zeilen für INSERT und UPDATE deleted: Zeilen für UPDATE und DELETE Mehrere Trigger pro Objekt möglich (Reihenfolge nur als first und last; sp_settriggerorder)

10 INSTEAD OF Trigger Original-Anweisung wird durch den Code des Triggers komplett ersetzt inserted und deleted enthalten die Daten, die geändert worden *wären*! Nie rekursiv, immer nur einer pro Operation Auch auf Sichten möglich Werden *vor* contraint-Prüfung ausgeführt

11 DDL Trigger Auf Datenbank oder Serverebene Für einzelne DDL Ereignisse oder Gruppen EVENTDATA() Funktion Nur AFTER Trigger CREATE TRIGGER ddlTrigger ON DATABASE FOR DROP_TABLE

12 CLR Trigger Trigger können seit SQL Server 2005 in.NET geschrieben werden Zugriff auf die.NET Klassenbibliotheken Zugriff auf externe Ressourcen Warnung: Transaktion erst beendet, wenn Trigger fertig! Externe Aufrufe eine Sicherheitsproblem! [SqlTrigger(Event=FOR INSERT)] public static void trg_LogToEventlog() { …

13 Agenda Aktive Komponenten DML- und DDL-Trigger Event Notifications Ausblick SQL Server 2008

14 Trigger bieten im Vergleich zu Event Notifications den Vorteil, dass sie im Kontext der sie auslösenden Transaktion ablaufen (und sie daher auch zurückrollen können). Gleichzeitig leiden sie aber auch an dem eklatanten Nachteil, dass sie im Kontext der sie auslösenden Transaktion ablaufen (und die Transaktion folglich warten muss, bis jegliche Triggeraktivität beendet ist, ehe sie fortfahren kann)! WAITFOR DELAY 0:03; …

15 Event Notifications Asynchrone Antworten auf ein Ereignis Können keine Transaktionen zurückrollen! Trigger: Reaktion auf DML und DDL Ereignisse Führen Code aus Event Notifications: Reaktion auf DDL und Trace/Performance Ereignisse (CREATE TABLE, LOCK_DEADLOCK,…) Senden XML-Nachrichten

16 Voraussetzungen für Event Notifications SQL Server 2005 oder neuer Service Broker Nachrichtenwarteschlange muss aktiviert sein Ein Dienst, der auf EN reagiert, muss erstellt werden Erweiterte Service Broker Funktionalität (Aktivierung, …) kann genutzt werden

17 Agenda Aktive Komponenten DML- und DDL-Trigger Event Notifications Ausblick SQL Server 2008

18 Productive Policy-based Management of your infrastructure Spend less time on ongoing operations Manage via policies instead of scripts Define Enterprise wide data management policies Automated monitoring and enforcement of policies Simplify your installation and configuration Integrated with your enterprise system management Define Policies that are compliant with System Definition Model Manage your data and system infrastructure with Microsoft System Center Enterprise Data Platform Declarative Management Framework Server Group Management Streamlined Installation Enterprise System Management

19 Optimized And Predictable Performance Optimize your System Performance Monitor your system by collecting and storing system events Analyze and report on your system performance Reduce your storage costs and increase query performance Predictable performance Manage concurrent workloads on single system Prevent runaway queries Ensure consistent query performance Performance Data Collection System Analysis Data Compression Query Optimization Modes Resource Governor Enterprise Data Platform

20 Management by Intent Today From Managing by scripts By default SQL Server 2005 turns off sensitive features e.g. CLR, Database Mail and OLE Automation To enable CLR and Database Mail the DBA must either: Use Surface Area Configurator (SAC) tool to explicitly enable these features OR Use T-SQL script to do so To monitor complian ce the DBA will manually run SAC or her script regularly Tomorrow To Management by Policies In Katmai, Declarative Management Framework (DMF) will offer easy configuration, automation and enforcement To enable CLR and Database Mail with DMF, the DBA will simply Define a policy to enable these features From Management Studio simply run the policy Compliance checking: DMF will automatically enforce the policy based on a schedule OR it will check once a user changes the configuration Reporting: DMF reports policy violation each time it occurs Can run on multiple servers automatically

21 Advanced Performance Analysis Extensible Data Collector Katmai will collect performance data e.g. memory usage, disk usage, etc User can also define other sets of events for tracking Performance Data Warehouse The Performance data warehouse will store deep data on SQL Servers performance including query performance and locking issues The data can be analyzed to offer deep insights on SQL Servers performance Rich Performance Reports Historical data on database performance will be displayed in rich reports Reports will allow drill downs for root cause analysis

22 Administratives… PASS – Professional Association for SQL Server Die SQL Server Nutzergruppe! Regelmäßige SQL Server Workshops und BootCamps Nutzergruppentreffen – von Usern für User SQL Jedis und SQL Rookies – jeder ist willkommen

23 Ressourcen SQL Server MSDN AA für Informatik-Studenten! Inside SQL Server Buch-Reihe Data Mining with Microsoft SQL Server 2005 (Tang, MacLennan) Microsoft Certified Professional, Technology Specialist, IT Professional, …

24 Microsoft Student Program Friedrich-Schiller-Universität Jena Fakultät für Mathematik und Informatik

25 25 Microsoft Software für Euch kostenlos!!! Betriebssysteme (Vista, XP, 2003, …) Betriebssysteme (Vista, XP, 2003, …) SQL Server 2005 SQL Server 2005 Visual Studio 2005 Visual Studio 2005 Office Visio, Project, Access, InfoPath Office Visio, Project, Access, InfoPath … Euer Ansprechpartner: Dr. Günter Schorr (EAP Raum 3416) MSDN - Academic Alliance

26 26 Veranstaltungen an der FSU Jena ASP.NET 2.0 Workshop März März Mai Mai 2007 … weitere Veranstaltungen in Planung! Ankündigung unter:

27 27 Microsoft Student Partner an der FSU Jena Stefan Kontschinsky (Dipl. Informatik) Auch Student Partner werden:

28 Fragen

29

30 Was ist neu am SQL Server 2005.NET Framework Common Language Runtime Integration User-defined Aggregates User-defined Data Types User-defined Functions SQL Server.NET Data Provider Extended Triggers Data Types Managed SQL Types New XML Datatype SQL Server Engine New Message Service Broker HTTP Support (Native HTTP) Database Tuning Advisor Multiple Active Result Sets Persisted Computed Columns Queuing Support Snapshot Isolation Level Scale Up Partitioning VIA support NUMA support Database Failure and Redundancy Fail-over Clustering (up to 8 node) Enhanced Multi-instance Support Database Mirroring Database Viewpoints XML XQUERY Support (Server & Mid Tier) XML Data Manipulation Language FOR XML Enhancements XML Schema (XSD) Support MSXML 6.0 (Native).Net XML Framework Notification Services & SQL Server CE Database Maintenance Backup and Restore Enhancements Checksum Integrity Checks Dedicated Administrator Connection Dynamic AWE Fast Recovery Highly-available Upgrade Online Index Operations Online Restore Parallel DBCC Parallel Index Operations Management Tools New Management Studio MDX Query Editor Version Control Support XML/A SQLCMD Command Line Tool Performance Tuning Profiler Enhancements Profiling Analysis Services Exportable Showplan Exportable Deadlock Traces Full-text Search Indexing of XML Datatype MDAC Side by Side installation Microsoft Installer base setup Support for Active Directory Deployment SQL Client.NET Data Provider Server Cursor Support Asynch Security All Permissions Grantable Fine Grain Administration Rights Separation of Users and Schema Replication Auto-tuning Replication Agents Oracle Publication Improved Blob Change Tracking OLAP and Data Mining Analysis Management Objects Windows Integrated Backup and Restore Web Service/XML for Analysis DTS and DM Integration New Data Mining Algorithms Auto Packaging and Deployment Data Transformation Services New Architecture (DTR + DTP) Complex Control Flows Control Flow Debugging For Each Enumerations Property Mappings Full Data Flow Designer Full DTS Control Flow Designer Graphical Presentation of Pkg Execution Immediate Mode and Project Mode Package (Advanced) Deployment Tools Custom Tasks and Transformations Reporting Services Multiple Output Formats Parameters (Static, Dynamic, Hierarchical) Bulk Delivery of Personalized Content Support Multiple Data Sources STS (Web Parts, Doc Libraries) Visual Design Tool Charting, Sorting, Filtering, Drill-Through Scheduling, Caching Complete Scripting Engine Scale Out architecture Open XML Report Definition

31 Transparent Data Encryption External Key Management Data Auditing Pluggable CPU Transparent Failover for Database Mirroring Declarative Management Framework Server Group Management Streamlined Installation Enterprise System Management Performance Data Collection System Analysis Data Compression Query Optimization Modes Resource Governor Entity Data Model LINQ Visual Entity Designer Entity Aware Adapters SQL Server Change Tracking Synchronized Programming Model Visual Studio Support SQL Server Conflict Detection FILESTREAM data type Integrated Full Text Search Sparse Columns Large User Defined Types Date/Time Data Type LOCATION data type SPATIAL data type Virtual Earth Integration Partitioned Table Parallelism Query Optimizations Persistent Lookups Change Data Capture Backup Compression MERGE SQL Statement Data Profiling Star Join Enterprise Reporting Engine Internet Report Deployment Block Computations Scale out Analysis BI Platform Management Export to Word and Excel Author reports in Word and Excel Report Builder Enhancements TABLIX Rich Formatted Data Personalized Perspectives … and many more


Herunterladen ppt "Trigger und Event Notifications im SQL Server 2005 Artus Krohn-Grimberghe Ehem. Student Partner Microsoft Student Program"

Ähnliche Präsentationen


Google-Anzeigen