Series: Before i forget check_mssql_health

Diese Artikel sind eher für mich selbst geschrieben als für andere Leute. Aus reiner Faulheit setze ich sie aber wie Charles Edge (https://www.krypted.com) auch auf meinem Blog mal der Öffentlichkeit aus.

Installation von 'check_mssql_health'.
In einem aktuellen Centos 7.2 System.

#yum install freetds && group install "Development Tools"

Sicherheitshalber auch perl-CPAN

#yum install Perl-CPAN

und definitiv Perl

#yum install Perl

Nach erfolgter installation beginnen wir mit der konfiguration des freetds.conf files.
Dies sollte unter /etc/freetds/freetds.conf zu finden sein. Andernfalls hilft "locate".

Aufbau der Datei:

[global]
tds version = 4.3
use ntlmv2 = yes

[hostname-database]
host = IP or FQDN
port = 1433
Instance = optional but mostly MSSQLSERVER
tdsversion = 8.0

Hinweis:
Das Kompilieren des checks via CPAN schlägt gefühlt zu 99% fehl. Daher manuelles kompilieren.

Herunterladen der Quelldateien:

perl-DBD-Sybase-1.15-1.el7.src.rpm

und installieren des RPMs via

rpm -ivh perl-DBD-Sybase-1.15-1.el7.src.rpm

Danach in das Home Verzeichnis und dort ggf. das tar.gz nochmals entpacken.

mit :

tar xzvf Beispiel.tar.gz

Anschließend auch in das Verzeichnis hineinwechseln und und dort mit perl das Makefile.pl anstossen.

perl Makefile.pl

Anschliessend den Anweisungen des Scripts folgen.
Bis man zu dem Punkt kommt wo er nach der default SYBASE Verbindung fragt.

(default:SYBASE)

An dieser Stelle erwartet er einen Hostnamen der Datenbank mit welcher er verbinden kann mit validen Verbindungszugangsdaten Login & PW.

(default:SYBASE):hostname-database

In unserer Beispiel Datei oben war dies der Eintrag mit
hostname-database.

Hinweis bei den meisten MSSQL installation gibt es einen sa (System Administrator Account) + passendes PW.
Dies eignet sich hervorragend für die installation.

Wenn dies erfolgreich durchgelaufen ist sollte man mit:

make && make install 

Die Installation abschliessen.

Checken der Verbindung mit den folgenden Kommandos:

tsql -s HostnameFreetdsfile -u sa  

oder

tsql -C

Compile-time settings (established with the "configure" script)
                            Version: freetds v0.91
             freetds.conf directory: /etc
     MS db-lib source compatibility: yes
        Sybase binary compatibility: yes
                      Thread safety: yes
                      iconv library: yes
                        TDS version: 4.2
                              iODBC: no
                           unixodbc: yes
              SSPI "trusted" logins: no
                           Kerberos: yes
========

tsql -H testDSN -pXXXX -U 'testuser' -P 'testpass'

=======

isql -v testDSN 'testuser' 'testpass'