Connettere Drupal 8 a SQL Server 2014
Salve, dopo aver fatto tutte le installazioni e settaggi del caso per un pacchetto che prevede WinIIS su Win10, PHP 7.3, SQL Server 2014 e Drupal 8.6.4 (utilizzando sqlserv 8.x-1.0-rc4 e wincache 8.x-1.11), avvio il wizard di setup di Drupal e mi si pianta al momento della connessione con SQL Server non riuscendo cos� a configurare il database con Drupal (faccio presente che il tipo db, host, nome db, userid, password per la connessione al DB sono tutti corretti).
Drupal mi restituisce un messaggio del tipo:
"Connessione al database fallita, il server riporta il seguente messaggio:
verificare che il server del database sia funzionante
verificare che il databse esista e di aver digitato correttamente il nome del database
verificare che la username e la password siano corretti
assicurarsi di aver digitato correttamente il nome dell'host del database"
QUALCUNO MI PUO' AIUTARE CHE NON RIESCO AD ANDARE AVANTI NEMMENO DI UN PASSO DOPO AVER PERSO GIA' TROPPO TEMPO A CERCARE SU WWW INFO IN MERITO?
Risposte
Risolto il problema che mi ha
Risolto il problema che mi ha fatto aprire il post ma adesso mi si verifica un altro problema legato ai driver dei moduli di Drupal e il log mi restituisce il seguente messaggio del quale chiedo cortesemente se qualcuno può aiutarmi:
The website encountered an unexpected error. Please try again later.
Error: Call to undefined function wincache_ucache_get() in Drupal\Driver\Database\sqlsrv\Connection->preprocessQuery() (line 642 of drivers\lib\Drupal\Driver\Database\sqlsrv\Connection.php).
Drupal\Driver\Database\sqlsrv\Connection->preprocessQuery('CREATE TABLE drupal_install_test (id int NOT NULL PRIMARY KEY)') (Line: 288)
Drupal\Driver\Database\sqlsrv\Connection->PDOPrepare('CREATE TABLE drupal_install_test (id int NOT NULL PRIMARY KEY)', Array) (Line: 267)
Drupal\Driver\Database\sqlsrv\Connection->prepareQuery('CREATE TABLE drupal_install_test (id int NOT NULL PRIMARY KEY)', Array) (Line: 503)
Drupal\Driver\Database\sqlsrv\Connection->query('CREATE TABLE {drupal_install_test} (id int NOT NULL PRIMARY KEY)') (Line: 176)
Drupal\Core\Database\Install\Tasks->runTestQuery('CREATE TABLE {drupal_install_test} (id int NOT NULL PRIMARY KEY)', 'Drupal can use CREATE TABLE database commands.', 'Failed to <strong>CREATE</strong> a test table on your database server with the command %query. The server reports the following message: %error.Are you sure the configured username has the necessary permissions to create tables in the database?', 1)
call_user_func_array(Array, Array) (Line: 141)
Drupal\Core\Database\Install\Tasks->runTasks() (Line: 1231)
install_database_errors(Array, './sites/default/settings.php') (Line: 180)
Drupal\Core\Installer\Form\SiteSettingsForm->getDatabaseErrors(Array, './sites/default/settings.php') (Line: 163)
Drupal\Core\Installer\Form\SiteSettingsForm->validateForm(Array, Object)
call_user_func_array(Array, Array) (Line: 82)
Drupal\Core\Form\FormValidator->executeValidateHandlers(Array, Object) (Line: 275)
Drupal\Core\Form\FormValidator->doValidateForm(Array, Object, 'install_settings_form') (Line: 118)
Drupal\Core\Form\FormValidator->validateForm('install_settings_form', Array, Object) (Line: 575)
Drupal\Core\Form\FormBuilder->processForm('install_settings_form', Array, Object) (Line: 318)
Drupal\Core\Form\FormBuilder->buildForm('install_settings_form', Object) (Line: 961)
install_get_form('Drupal\Core\Installer\Form\SiteSettingsForm', Array) (Line: 631)
install_run_task(Array, Array) (Line: 584)
install_run_tasks(Array, NULL) (Line: 125)
install_drupal(Object) (Line: 44)
A quanto pare la funzione
A quanto pare la funzione mancante è data dalla libreria WinCache di php
https://secure.php.net/manual/en/function.wincache-ucache-get.php
ipotizzo che non venga caricata per qualche ragione sul tuo sistema (errore di inizializzazione o mancata abilitazione di un'estensione).
Ti segnalo un post su drupla.org che potrebbe esserti utile, ci sono molte info riguardo questo problema:
https://www.drupal.org/project/sqlsrv/issues/2505239
Grazie della tua risposta,
Grazie della tua risposta, ora mi leggo il materiale.
Ho seguito il linea di
Ho seguito il linea di massima i suggerimenti relativi al file php.ini (senza considerare quelli relativi a settings.php dato che su WinIIS non è presente).
Ancora il problema permane.
Ho provato a usare i drivers utilizzando anche i drivers versione 8.x-1.x-dev ma non funzionano
Se utilizzassi i drivers 8.x-2.13 perderei la possibilità di utilizzare free tali drivers a causa della licenza PHPMssql: http://www.drupalonwindows.com/en/content/phpmssql
Qualcuno saprebbe suggerirmi una qualche soluzione?
Fondamentalmente vorrei
Fondamentalmente vorrei capire se il ricorso ai drivers 8.x-2.13 di sqlsrv è realmente una soluzione al problema e se prima di sottoscrivere la licenza posso ricorrere a soluzioni alternative.
Grazie a tutti.
Il file settings.php esiste
Il file settings.php esiste anche su Win, ora cerco di seguire i suggerimenti su settings.php.
Dopo 12 fatiche ho risolto il
Dopo 12 fatiche ho risolto il problema!!!!!!!!!!!!!!!!!!!!!!!
Ora funziona tutto correttamente.
Il rpoblema era il seguente: gli ultimi drivers scaricabili da www di sqlsrv.dll sono relativi alla versione 7.3 di PHP mentre i drivers di wincache.dll funzionano solo fino alla versione 7.1 di PHP