Met Zabbix is het vrij eenvoudig om Windows Services to monitoren en daar m.b.v. een Action een Alert via Email uit te laten komen bij een verstoring van deze service(s). Zo ook voor Nodes in een MS-SQL Cluster omgeving. Echter, op het moment dat één van de cluster-nodes passief is, zullen de resources zoals SQL-Services en disks niet actief zijn en dus altijd een trigger doen afgaan in Zabbix. Voor een cluster moeten we dat dus anders aanpakken… lees meer…
Categorie archief: MS-SQL
SQL Failover Cluster in de speeltuin
In feite is het installeren van een SQL Failover Cluster niet eens zo heel veel werk. De Windows Server feature ‘Failover Cluster’ installeren op alle nodes en daarna op de eerste node een SQL Server installatie voor clustering is ook een kwestie van een paar maal op ‘Next…‘ klikken. SQL-nodes toevoegen aan een cluster idem dito. Nee, het echte werk voor clustering zit ‘m in de voorbereiding! Lees meer…
MS-SQL en mySQL connectie in PHP
MS-SQL:
$connectionInfo = array( "Database" => "TheDatabaseName", "UID" => "TheUserName", "PWD" => "ThePassword" ); $conn = sqlsrv_connect( $serverName, $connectionInfo); if (!$conn) { die("Connection failed: " . sqlsrv_errors()); }
mySQL:
$connectionInfo = array( "Database" => "TheDatabaseName", "UID" => "TheUserName", "PWD" => "ThePassword" ); $conn = mysqli_connect($DBservername, $connectionInfo); if (!$conn) { die("Connection failed: " . mysqli_connect_error()); }
MS SQL 2012 R2 Log Shipping
Om een toch database beschikbaar te hebben tijdens een probleem met de SQL server kan de database op een andere server ‘bijgehouden’ worden. Dit houdt in dat alle transacties ook op de backup-server uitgevoerd worden. De backup-server houdt de database hiervoor in read-only mode en de transacties worden via logshipping overgezet.
SQL BACKUP LOG kan niet gemaakt worden want er is geen FULL BACKUP
Deze foutmelding verschijnt in de details pagina van de History van de Log_Backup_Job:
“BACKUP LOG cannot be performed because there is no current database backup”
Controle van de backup folder leert echter dat er hier wel degelijk backup bestanden zijn. Waarom dan deze foutmelding?
Blijkt dat de database ‘Recovery Model’ gewijzigd is van Simple naar Full en de bestaande backup files zijn nog van de Simple versie van de database. Door nu eerst opnieuw een Full Backup te maken van de gewijzigde database wordt de header informatie in de MDF-file aangepast naar de nieuwe backup en zal de LOG backup hierna ook weer werken.
Controle van de LSN kan met de volgende query:
select last_log_backup_lsn from sys.database_recovery_status where database_id = db_id(‘DATABASENAAM’)
Indien het resultaat NULL is zal er geen backup zijn, een lang getal geeft aan dat het er wel is…
Voorkom ongewenste groei van SQL Transaction Log files
Zodra een SQL database wordt aangemaakt op de SQL server zal het standaard in een ‘pseudo simple recovery mode’ staan. Dit houdt in dat SQL zelf zal kijken of records in de transactie-log (de zgn. log-records) nog gebruikt worden en zoniet, dan worden ze opgeruimd. Zodra er echter gebruik gemaakt gaat worden van SQL Full Backup dan wordt gekeken naar de instelling van de ‘Recovery model’ die standaard op ‘Full’ staat*. Hierdoor worden de ‘log-records’ pas opgeruimd als er ook ‘Transaction Log Backups’ gemaakt worden! Lees verder