Passaggio 3: Crea il database
Se stai installando Drupal in un sito di test, puoi saltare questo passaggio. Quando esegui lo script di installazione (il passaggio successivo), sarà sufficiente fornire il nome utente e la password di un utente del database che abbia il permesso di creare un nuovo database.
Se stai installando Drupal su un server web pubblico, dovresti prima creare manualmente il database e fornire l’accesso a un utente con privilegi limitati. L’utente del database specificato durante l’installazione verrà utilizzato per connettersi al database a ogni caricamento di pagina.
Questa pagina fornisce istruzioni per creare un database Drupal utilizzando uno dei seguenti metodi:
- Pannello di controllo basato su browser (ad esempio “CPanel” o “Plesk”)
- PhpMyAdmin
- Comandi SQL (tramite riga di comando)
- Comandi MySQL / MariaDB
- Comandi PostgreSQL
Caratteri consentiti nel nome del database MySQL / MariaDB
- Se utilizzi lettere maiuscole nel nome del database, queste verranno convertite in minuscole.
- Caratteri validi: a..z, 0..9 e “_” (underscore).
Creare un database e un utente tramite un pannello di controllo basato su browser
La maggior parte degli account di hosting web fornisce un pannello di controllo che consente di amministrare facilmente il sito. Questi strumenti includono funzioni per creare nuovi database e per aggiungere un “utente” con privilegi su quel database. Consulta la documentazione del tuo hosting per sapere come farlo.
Durante la creazione dell’utente del database, potresti visualizzare una schermata che ti consente di specificare i privilegi per diverse operazioni. Nella maggior parte dei “Database Wizard”, è sufficiente selezionare “Tutti i privilegi” per l’utente (e deselezionare “Grant option” se presente) per configurarlo correttamente.
Annota il nome utente, la password, il nome del database e l’host. (Ad esempio, se stai installando su http://example.com, http://drupal.example.com o http://example.com/blog). Inserirai queste informazioni durante il processo di installazione nel browser.
Nota che spesso, creando database e utenti tramite interfaccia web, il nome utente dell’hosting viene aggiunto come prefisso ai nomi del database e dell’utente. Ad esempio, se accedi al pannello come “webadmin”, un database chiamato “drupal8db” e un utente “d8user” potrebbero diventare “webadmin_drupal8db” e “webadmin_d8user”. Questo serve a garantire nomi univoci in ambienti di hosting condiviso.
Creare un database e un utente con phpMyAdmin
Il metodo più sicuro è creare un utente che abbia tutti i privilegi solo per il nuovo database, ma non per altri. Questo riduce il rischio di accessi indesiderati ad altri database nel caso in cui le credenziali vengano compromesse.
Nota: Questa procedura presuppone l’accesso root a phpMyAdmin (versione 3.5.x).
- Accedi a phpMyAdmin come utente root.
- Fai clic su “Users” e poi su “Add user”.
- Inserisci un nome utente a tua scelta.
- Nel campo “Host” seleziona “Local”, più sicuro a meno che non serva l’accesso da un altro server.
- Inserisci o genera una password.
- Nella sezione “Database for user” scegli “Create database with same name and grant all privileges”.
- Assicurati di selezionare come collazione utf8mb4_unicode_ci o utf8mb4_general_ci.
- Nota: La differenza tra le due collazioni riguarda il modo in cui i caratteri vengono confrontati e ordinati. utf8mb4_general_ci è leggermente più veloce, ma utf8mb4_unicode_ci è più accurata. Se non sei sicuro, usa utf8mb4_unicode_ci.
- Nota: Se non puoi scegliere la collazione in fase di creazione, puoi modificarla successivamente nella sezione “Operations” di phpMyAdmin.
PhpMyAdmin creerà un database con lo stesso nome dell’utente. Se desideri un nome diverso:
- Vai su “Databases” e seleziona il database appena creato.
- Fai clic su “Operations”.
- Nel campo “Rename database to” inserisci il nuovo nome.
- Fai clic su “Go”.
Creare un database dalla riga di comando
Se non usi un pannello web e preferisci lavorare da terminale, puoi creare il database tramite comandi MySQL, MariaDB o PostgreSQL. Consulta i file INSTALL.mysql.txt e INSTALL.pgsql.txt inclusi in Drupal per ulteriori dettagli.
Creare un database con i comandi MySQL / MariaDB
Nota: Il database deve utilizzare la codifica UTF-8 (utf8mb4) e una collazione utf8mb4_unicode_ci o utf8mb4_general_ci. Se non sei sicuro, usa la prima.
mysql -u username -p -e "CREATE DATABASE databasename CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci";
Poi accedi e imposta i privilegi:
mysql -u username -p CREATE USER username@localhost IDENTIFIED BY 'password'; GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER, CREATE TEMPORARY TABLES ON databasename.* TO 'username'@'localhost' IDENTIFIED BY 'password'; FLUSH PRIVILEGES; exit;
Nota: Usa i backtick (`) attorno al nome del database se contiene caratteri speciali. Ad esempio, per “drupal_test_account”, scrivi `drupal\_test\_account`
.
Creare un database con PostgreSQL
Il database deve essere creato con codifica UTF-8 (Unicode).
1. Creare un utente
createuser --pwprompt --encrypted --no-adduser --no-createdb username
2. Creare il database
createdb --encoding=UNICODE --owner=username databasename
Se i comandi vengono eseguiti correttamente, riceverai i messaggi CREATE USER e CREATE DATABASE.