Visualizzazione post con etichetta sql server. Mostra tutti i post
Visualizzazione post con etichetta sql server. Mostra tutti i post

venerdì 13 novembre 2020

Ricostruire/Ricompilare i database di sistema per un'istanza di SQL Server (Express)

Se il servizio Sql Server Express non parte a causa di un file master.mdf danneggiato si può provare a ricostruire il database nel seguente modo:

Fermare tutti i servizi SqlServer
Nota: SQL Server Agent è presente ma disabilitato nelle istanze di SQL Server Express

Fare un backup di tutti i databases della cartella C:\Program Files\Microsoft SQL Server\MSSQL11.SQLEXPRESS\MSSQL\DATA

Cancellare i files master.mdf, mastlog.ldf, tempdb.mdf, templog.ldf all'interno della cartella su menzionata

Con prompt dei comandi posizionarsi nella cartella
C:\Program Files\Microsoft SQL Server\110\Setup Bootstrap\SQLServer2012

Eseguire il seguente comando cambiando i valori dei parametri a seconda della propria installazione
Setup /QUIET /ACTION=REBUILDDATABASE /INSTANCENAME=SQLEXPRESS /SQLSYSADMINACCOUNTS="NT AUTHORITY\SYSTEM" /SAPWD=goodpassword123

Attendere il completamento, avviare i servizi "Sql Server", "Sql Server Browser" e infine con l'aiuto di MS Server Management Studio, ricollegare tutti i files dei databases esistenti


(-;


giovedì 21 maggio 2020

PHP PDO con Microsoft Sql Server in Windows

Ore di tentativi in regalo per voi popolo di naviganti.

Scaricare da https://github.com/microsoft/msphpsql/releases il file contenente l'ultima realease dei driver php pdo per Sql Server di Macrosoft. (Scegliere quello adatto alla propria versione di php)

2023-12-24: https://learn.microsoft.com/it-it/sql/connect/php/release-notes-php-sql-driver?view=sql-server-ver16#previous-releases


Salvare i files di cui sopra nella cartella ext di php.
Abilitare i drivers installati in php.ini ne seguente modo:

extension=php_sqlsrv_74_ts.dll
extension=php_pdo_sqlsrv_74_ts.dll

abilitare anche
extension=pdo_odbc


Abilitare in SQL Server: Autenticazione di SQL Server e di Windows
Abilitare l'utente sa ed impostare una password senza scadenza

Riavviare Sql Server
Riavviare Apache


Esempio di connessione in PHP:

    $serverName = "SERVER\SQLEXPRESS";
    $database = "MYDB";
    $uid = "sa";
    $pwd = "mypassword";       
    $conn = new PDO("sqlsrv:server=$serverName ; Database = $database;", $uid, $pwd);



(-;