SQL: Agent Job anlegen

Das Anlegen von Agent Jobs sind eigentlich recht einfach. Aber gilt nicht für den allerersten Job;-). Aber es sind mehrere Schritte:

  1. Meist erst das Bereitstellen einer SSIS-Solutions. Dazu mehr unter „SQL: Deploy SSIS-Solution“
  2. Einmalig meist das Anlegen eines Credentials und eines Proxy. Dazu mehr unter „SQL: Credentials und Proxy“
  3. Dann das eigentliche Anlegen des Agent Jobs (hier unten im Text)
  4. Und das Testen…Und wo man die Ursachen von Fehlern findet (hier ganz unten im Text)

Möglicherweise fehlen noch Rechte:

Lösung: Rolle ssis_admin in SSISDB und Rolle db_ssisoperator in msdb hinzufügen. Falls dann sind aber diese „User“ zwar in den beiden Datenbank (jeweils unter: Security / Users) sichtbar, aber so mit einem „X“ oder „irgendwie deaktiviert“… Dann müssen diese User auch in der Datenbank hinzugefügt werden – wie im T-SQL Code:
(Bitte die meinuser und meinlogin anpassen – und häufig sind beide gleichen Buchstabenfolge. Speziell bei AD-Usern und AB-Gruppen.)

USE [SSISDB]
GO
CREATE USER [ meinuser ] FOR LOGIN [ meinlogin ] WITH DEFAULT_SCHEMA=[dbo]
GO
EXEC sp_addrolemember @rolename = 'ssis_admin', @membername = 'meinuser';
GO

USE [msdb]
GO
CREATE USER [ meinuser ] FOR LOGIN [ meinlogin ] WITH DEFAULT_SCHEMA=[dbo]
GO
EXEC sp_addrolemember @rolename = 'db_ssisoperator', @membername = 'meinuser';
GO
Print Friendly, PDF & Email

Indizes aktualisieren….

/**************************************************************
 Bitte als SYSDBA anmelden.

 DEFRAGMENTATION von Indizes - es ist nicht notwendig zusätzliche
 Bibliotheken aufzurufen

 ACHTUNG: HIER SIND ZWEI STELLEN FREIZUSCHALTEN!!!

 HINWEIS: die richtige DB festlegen
   
***************************************************************/
use   --FranksDB
go
--Hier ist bewusst ein Fehler eingebaut, damit die DB korrekt festgelegt ist


--DEFRAGMENTATION:
SET NOCOUNT ON;
DECLARE @objectid int;
DECLARE @indexid int;
DECLARE @partitioncount bigint;
DECLARE @schemaname sysname;
DECLARE @objectname sysname;
DECLARE @indexname sysname;
DECLARE @partitionnum bigint;
DECLARE @partitions bigint;
DECLARE @frag float;
DECLARE @command varchar(8000);
-- ensure the temporary table does not exist
IF EXISTS (SELECT name FROM sys.objects WHERE name = 'work_to_do')
	DROP TABLE work_to_do;

--diesen parameter "DB_ID()" darf man nicht benutzten - wieso auch immmer
DECLARE @DBID bigint;
select @DBID=DB_ID();

-- conditionally select from the function, converting object and index IDs to names.
SELECT	object_id AS objectid,
	index_id AS indexid,
	partition_number AS partitionnum,
	avg_fragmentation_in_percent AS frag
INTO work_to_do
FROM sys.dm_db_index_physical_stats (@DBID, NULL, NULL , NULL, 'LIMITED')
WHERE avg_fragmentation_in_percent > 10.0 AND index_id > 0;
-- Declare the cursor for the list of partitions to be processed.
DECLARE partitions CURSOR FOR SELECT * FROM work_to_do;

-- Open the cursor.
OPEN partitions;

-- Loop through the partitions.
FETCH NEXT
	FROM partitions
	INTO @objectid, @indexid, @partitionnum, @frag;

WHILE @@FETCH_STATUS = 0
	BEGIN;
	SELECT @objectname = o.name, @schemaname = s.name
	FROM sys.objects AS o
	JOIN sys.schemas as s ON s.schema_id = o.schema_id
	WHERE o.object_id = @objectid;

	SELECT @indexname = name FROM sys.indexes WHERE object_id = @objectid AND index_id = @indexid;

	SELECT @partitioncount = count (*) FROM sys.partitions  WHERE object_id = @objectid AND index_id = @indexid;

	-- 30 is an arbitrary decision point at which to switch between reorganizing and rebuilding
	IF @frag <= 10.0
	BEGIN;
		SELECT @command = 'Index: [' + @indexname + '] ON [' + @schemaname + '].[' + @objectname + ']...OK';
	END;

	IF @frag > 10.0 AND @frag <= 30.0
	BEGIN;
		SELECT @command = 'ALTER INDEX [' + @indexname + '] ON [' + @schemaname + '].[' + @objectname + '] REORGANIZE';
		IF @partitioncount > 1
			SELECT @command = @command + ' PARTITION=' + CONVERT (CHAR, @partitionnum);
		--EXEC (@command);  -----HIER FREISCHALTEN!!!!!
	END;

	IF @frag > 30.0
	BEGIN;
		SELECT @command = 'ALTER INDEX [' + @indexname +'] ON [' + @schemaname + '].[' + @objectname + '] REBUILD';
		IF @partitioncount > 1
			SELECT @command = @command + ' PARTITION=' + CONVERT (CHAR, @partitionnum);
		--EXEC (@command); -----HIER FREISCHALTEN!!!!!
	END;
	PRINT 'Executed ' + @command;

	FETCH NEXT FROM partitions INTO @objectid, @indexid, @partitionnum, @frag;
END;
-- Close and deallocate the cursor.
CLOSE partitions;
DEALLOCATE partitions;

-- drop the temporary table
--Select * from work_to_do
IF EXISTS (SELECT name FROM sys.objects WHERE name = 'work_to_do')
	DROP TABLE work_to_do;

-- FERTIG Meldung
PRINT 'All Indices was reorganized or rebuilded. '
Print Friendly, PDF & Email

macOS als virtuelle Maschine auf einem Windows-Host….

Quelle/n:
https://www.nicksherlock.com/2018/06/installing-macos-mojave-on-proxmox/
https://techsviewer.com/install-macos-mojave-vmware-windows/
Der zweite Link noch einmal als PDF:
How to Install macOS Mojave Final on VMware on Windows PC
Hinweis: Alle dieser Links „KÖNNTEN“ benutzt werden um ein macOS auf einen „nicht Apple Rechner“ zu bringen – ich kann das jedoch nicht empfehlen und schon gar nicht, wenn unsichere Quellen genutzt werden um etwas auf einen Rechner zu installieren.

Print Friendly, PDF & Email

macOS Mojave…Mojave.app=>Mojave.dmg=>Mojave.iso

Um eine „Mojave.iso“ Datei (z.B. um dies in VMware/Fusion oder anderen virtuellen Maschinen installieren oder dies auf einem USB-Stick zu bringen, müssen Sie das über den Apple „App Store“ downloaden.
Irgendwann sind die knapp über 6 GB heruntergeladen und dann fängt Apple an das zu installieren – ab diesem Dialog die automatische Installation beenden.
Entweder „option+command+Esc“


oder im Menü des Installers „beenden“.
Jetzt sollte sich diese 6 GB im Order „Programme“ finden als „macOS Mojave installieren.app“

Die gewünschte *.iso Datei habe ich erstellt nach dem u.g. Link und die .sh Datei auch gleich gesichert – die die Angaben der Ordner musste ich anpassen:
create_iso_mojave.sh

Bitte die Endung „.txt“ wieder entfernen. Und um das Script zu starten bitte eine Shell(=Terminal) öffnen und:

sh pfad>/datei.sh

Quelle:
https://www.nicksherlock.com/2018/06/installing-macos-mojave-on-proxmox/
Hinweis: Dieser Link „KÖNNTE“ auch benutzt werden um ein macOS auf einen „nicht Apple Rechner“ zu bringen – ich kann das jedoch nicht empfehlen und schon nicht, wenn unsichere Quellen genutzt werden um etwas auf einen Rechner zu installieren.

Print Friendly, PDF & Email

SSRS: „multi value“ Parameter Übergeben an Subreports und Datasets…

Mir sind zwei etwas unterschiedliche Ansätze wichtig. Speziell die Variante 2 ist wichtig wenn große Mengen von Sätzen in einem Parameter benutzt wird.

Variante 1

=join(Parameters!.Value,",")

und kann im Dataset an beliebigen Stellen benutzt werden – vor allem als zwischen Variable im SQL-Code des Dataset benutzt werden.

Variante 2

Parameter in Datasets:
=Parameters!MyParamName.Value

Achtung nicht das „(0)“: =Parameters!MyParamName.Value(0)
Aber im Dataset muss der Parameter direkt so genutzt werden und nur bedingt mehrfach oder im SQL-Code an interne Variablen zu übergeben:

...
WHERE values IN (@parameter)
...

Link/s:

https://stackoverflow.com/questions/13725622/passing-multivalue-parameter-to-a-subreport

https://docs.microsoft.com/de-de/sql/reporting-services/report-design/add-a-multi-value-parameter-to-a-report?view=sql-server-2017

Print Friendly, PDF & Email

Liste aller ISO Normen und deren Bedeutung

Die ISO Normen sind international vereinbart und wird bei der „International Organisation for Standardization“ verabschiedet.

Leider werden diese Regeln der Normen hier nur kostenfrei veröffentlicht, aber nur kostenpflichtig die z.B. „ISO 4217“ Die Liste aller Währungen die das Kürzel „EUR“ der Europäischen Währung und die Unterteilung als 100 Cent sind 1 EUR enthält.

Link/s:
https://www.iso.org/maintenance_agencies.html

Print Friendly, PDF & Email

Win10 Desktopsymbole…

Die Desktopsymbole können in Win 10 festgelegt werden in der „Personalisierung“…Zu finden in als rechter Mausklick auf dem Desktop und dort „Anpassen“ auswählen:

Und dann die Desktopsymboleinstellungen anklicken:

Print Friendly, PDF & Email

DNS Cache leeren

So löschen Sie den DNS Cache und die gespeicherte Liste der Domänennamen
Rufen Sie mit [Win +R] den Ausführen-Dialog auf.
Geben Sie cmd ein und drücken die Eingabetaste.
Nun öffnet sich ein Fenster zur Eingabe von Kommandozeilen-Befehlen.
Geben Sie hier ipconfig /flushdns ein und drücken Sie die [Return]-Taste.

Testen kann man ob die IP-Adresse eines Rechners finden kann
Eine Shell öffnen
Geben Sie hier rdfo ein und drücken Sie die [Return]-Taste.

Link/s:
https://www.tippscout.de/windows-dns-cache-loeschen_tipp_2292.html

Print Friendly, PDF & Email

Windows: Test-Dateien schnell erzeugen

Testdateien benötigt man gelegentlich um z.B. um die Geschwindigkeit von „Copy-Befehlen“ zu testen oder einfach um einen Platz sicherstellen um

fsutil file createnew C:\dummy.tmp 1073741824

1 MB = 1048576 Bytes
100 MB = 104857600 Bytes
1 GB = 1073741824 Bytes
10 GB = 10737418240 Bytes
100 GB = 107374182400 Bytes
1 TB = 1099511627776 Bytes
10 TB = 10995116277760 Bytes

Quelle:
http://www.winforpro.com/einfach-groe-test-dateien-erstellen/

Print Friendly, PDF & Email

Weiterbildung ist wichtig und sollte bezahlbar sein!

Ich bekomme regelmäßig Angebote über Webcast-Schulungen per Email. Die Schulungen die ich angeschaut hatte waren alle kostenlos und sind völlig ohne Zeitvorgaben! Lediglich muss man ca. 100 EUR zahlen wenn man eine „Urkunde“ über den Kurs haben will. Alle Themen zu finden unter:
https://www.edx.org/

Des weiteren habe ich interessante Kurse gefunden:

https://www.udemy.com/

https://www.whizlabs.com/

Speziell für iOS Kurse gab es die Website:
https://members.codingtutor.de/jetzt-loslegen/
Aber vielleicht nicht wirklich preiswert und die (schriftlich!) versprochene „persönliche“ Unterstützung gibt es nicht einmal per E-Mail. Aber der Trainer, erklärt die Themen doch überdurchschnittlich gut – und der Kurs ist in deutsch!

 

Print Friendly, PDF & Email

DUNS Nummern….

Eine DUNS®-Nummer sind 9-stellige, weltweit eindeutige Nummern. 

Es kann festgestellt zu welchem Unternehmen die DUNS®-Nummer gehört und abgefragt werden über der UPIK®-Plattform .Hierzu muss die DUNS®-Nummer sowie das Land, in welchem das gesuchte Unternehmen seinen Geschäftssitz hat, eingegeben werden. Umgekehrt kann auch anhand der Adressdaten eines Unternehmens die zugehörige DUNS®-Nummer gesucht werden.

DUNS®-Nummern können von Unternehmen kostenlos auf der UPIK®-Plattform beantragt werden. DUNS®-Nummern werden nicht an Privatpersonen vergeben.

DUNS®-Nummern wurden 1962 von der Firma Dun & Bradstreet eingeführt und heißen eigentlich D&B D-U-N-S® Nummer.

Links:

https://www.upik.de/

https://ecosio.com/de/blog/2016/06/17/Was-ist-eine-DUNS-Nummer/

 

 

 

 

Print Friendly, PDF & Email

Notepad++ mit Plugin „Compare“

Die derzeit aktuellste Notepad++ hat die Version 7.7.1
Quelle: https://notepad-plus-plus.org/download/

und es können viele Plugins ausgewählt werden und darunter ist wieder „Compare“.


Es galt im 2018:

Die derzeit aktuellste Notepad++ hat die Version 7.5.8
Quelle: https://notepad-plus-plus.org/download/

Hier entweder 32 oder 64bit auswählen, installieren und das unbedingt sich „merken“ 😉 Das zusätzliche Plugin „Compare“ ist seit der Version 7.5 nicht mehr im Notepad++ und kann auch nicht mehr ohne weiteres nachinstalliert werden. Gründe lag an Werbung in dem „Plugin Manager“. Wen es interessiert: https://notepad-plus-plus.org/news/notepad-7.5-released.html

Dann den Plugin Manager extra installieren (bisher bekam ich keine Werbung) und mehr Anleitung unter: http://bruderste.in/npp/pm/#install und Download unter: https://bruderste.in/npp/pm/update.htm

Hier wurde leider nicht schön angegeben welche Variante der Plugin Manager die richtige wäre und habe von https://github.com/bruderstein/nppPluginManager/releases die Version „PluginManager_v1.4.11_UNI.zip “ heruntergeladen. Dieses Zip-Datei auspacken und die Datei „PluginManager.exe“ in den Order legen, wo das „npp.exe“ ist (z.B. „C:\Program Files (x86)\Notepad++“) und die „gpup.exe“ in den Unterordner „updater“.

Dann das Plugin „Compare“ herunterladen (richtige Version – sonst gibt’s mehrere Probleme) und auspacken. Quelle: https://github.com/pnedev/compare-plugin/releases/tag/v2.0.0

Nun Notepad++ als Administartor(!) starten und unter Setting/Import/ImportPlugin(s)… den gerade ausgepackten Ordner auswählen (das Notepad++ läuft als Administrator und  möglicherweise liegt der ausgepackter Datei nicht an der erwarteten Stelle;-) – also „ComparePlugin.dll“ auswählen und das war es. Notepad++ beenden und normal starten….z.B. zwei Dateien auswählen und über rechte Mausklick „Notepad++“ starten. Und unter Plugin sollte „Compare“ bereitstehen.

 

Print Friendly, PDF & Email

Remotedesktop Verbindung – Sicherheitseinstellungen seit 8.5.2018

Microsoft hat am 8.5.2018 bei einem der Updates die Sicherheits- Einstellungen verändert und führt teilweise zu Fehlermeldungen.

Bei einem Zugriff per RDP (=mstsc.exe) auf einen Rechner bedeutet:

„Zugriff per RDP“ => man ist „Client“

„auf einen Rechner“ => das ist der „Server“

Diese Begriffe werden gebraucht bei dem Link von Microsoft: https://go.microsoft.com/fwlink/?linkid=866660

Möglicherweise muss die „AllowEncryptionOracle“ auf 2 gestellt werden, bis auch beim Server die Updates eingespielt sind:

 

Print Friendly, PDF & Email

Neustart per CMD-Shell

Eine Windows-Maschine die man nicht über die grafische Oberfläche bedienen kann kann in einer CMD-Shell herunter gefahren werden, oder mit dem Parameter „/R“ neustarten:

shutdown /R
oder
shutdown /R /T0

Print Friendly, PDF & Email

Fritz!Box: Sprachnachrichten per E-Mail

Sprachnachrichten des Anrufbeantworter der Fritz!Box kann man sich per E-Mail senden lassen.
In dem Fritz!Box Menü über Telefonie / Anrufbeantworter diesen aktivieren und dann passend Einstellen:

Ganz unten im Dialog in den „Weitere Einstellungen“ kann die E-Mail Adresse eintragen werden, an die Nachricht gesendet werden soll.

Wichtig ist, dann noch im Bereich „Push Service“ den Dienst aktivieren für „Anrufbeantworter“.

Gefunden habe ich den Tipp unter:
https://www.youtube.com/watch?v=Vg-4sRVIeqs

Print Friendly, PDF & Email

Powershell: Welche .NET Versionen sind aktuell installiert?

Quelle:
https://github.com/evilbaschdi/PowerShellScripts/blob/master/PowerShellProject/GetDotNetVersions.ps1

Write-Host (Get-ChildItem 'HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP' -recurse |
Get-ItemProperty -name Version,Release -EA 0 |
Where-Object { $_.PSChildName -match '^(?!S)\p{L}'} |
Select-Object PSChildName, Version, Release, @{
  name="Product"
  expression={
      switch($_.Release) {
        378389 { [Version]"4.5" }
        378675 { [Version]"4.5.1" }
        378758 { [Version]"4.5.1" }
        379893 { [Version]"4.5.2" }
        393295 { [Version]"4.6" }
        393297 { [Version]"4.6" }
        394254 { [Version]"4.6.1" }
        394271 { [Version]"4.6.1" }
        394802 { [Version]"4.6.2" }
        394806 { [Version]"4.6.2" }
        460798 { [Version]"4.7" }
        460805 { [Version]"4.7" }
        461308 { [Version]"4.7.1" }
        461310 { [Version]"4.7.1" }
      }
    }
} | Format-Table | Out-String)

Write-Host "Press any key to continue..."
#$Host.UI.RawUI.ReadKey("NoEcho,IncludeKeyUp") > $null

Print Friendly, PDF & Email

Garantiestatus von Festplatten prüfen

Quelle: heise.de: Vorsicht-vor-OEM-Festplatten

 

Print Friendly, PDF & Email