Hosting web10 dicembre 2025 176 visualizzazioni

Gestire i database MySQL su cPanel

Gestire i database MySQL su cPanel

Gestione dei database MySQL su cPanel

OuiHeberg - Documentazione tecnica
Guida completa per creare e gestire i tuoi database MySQL/MariaDB


Che cos'è un database MySQL?

Un database MySQL (o MariaDB) è un sistema di gestione dei dati che consente di memorizzare, organizzare e recuperare informazioni in modo strutturato. È essenziale per far funzionare la maggior parte delle applicazioni web moderne.

Casi d'uso comuni:

  • CMS: WordPress, Joomla, Drupal, PrestaShop
  • Forum: phpBB, MyBB, Discourse
  • E-commerce: WooCommerce, Magento, OpenCart
  • Applicazioni personalizzate: Siti dinamici in PHP, Python, Node.js

Terminologia importante

Termine Descrizione
Database Contenitore che memorizza le tue tabelle e dati
Utente MySQL Account con credenziali per accedere ai database
Privilegi Permessi concessi a un utente su un database
phpMyAdmin Interfaccia web per gestire visivamente i tuoi database

Accedere agli strumenti di database

Connessione a cPanel

  1. Accedi al tuo spazio cliente OuiHeberg
  2. Accedi al tuo hosting e fai clic su Accedi a cPanel

Gli strumenti disponibili

Nella sezione Database di cPanel, troverai diversi strumenti:

Sezione Database in cPanel

Strumento Descrizione
Gestisci i miei database Gestione completa dei database e degli utenti
Database Wizard Guida passo passo per creare un database
phpMyAdmin Interfaccia grafica per gestire il contenuto dei database
Remote MySQL Consentire le connessioni remote

Metodo 1: Utilizzare il Database Wizard (Consigliato per i principianti)

La guida Database Wizard è il metodo più semplice per creare un database completo in pochi passaggi.

Passo 1: Aprire la guida

In cPanel, fai clic su Database Wizard nella sezione Database.

Database Wizard in cPanel

Passo 2: Creare il database

Inserisci il nome del tuo nuovo database e fai clic su Next Step.

Creazione del database

💡 Nota: cPanel aggiunge automaticamente un prefisso al nome del tuo database (es: tuoutente_nomedatabase). È questo nome completo che dovrai utilizzare nelle tue applicazioni.

Passo 3: Creare l'utente

Crea un utente MySQL con una password sicura.

Creazione dell'utente MySQL

Raccomandazioni per la password:

  • Minimo 12 caratteri
  • Mischiare maiuscole, minuscole, numeri e simboli
  • Utilizza il Password Generator integrato per generare una password forte

Generatore di password

Fai clic su Create User per continuare.

Pulsante Create User

Passo 4: Assegnare i privilegi

Seleziona i privilegi da concedere all'utente su questo database.

Assegnazione dei privilegi

Per un utilizzo standard (WordPress, sito web, ecc.), seleziona ALL PRIVILEGES.

Fai clic su Next Step per finalizzare.

Passo 5: Conferma

Ricevi un riepilogo della tua configurazione:

Conferma di creazione

Informazioni da conservare:

Nome del database: prefisso_nomedatabase
Utente MySQL: prefisso_utente
Password: tua_password
Server MySQL (hostname): localhost
Porta MySQL: 3306

Metodo 2: Utilizzare Gestisci i miei database (Gestione avanzata)

Questo metodo offre maggiore controllo e consente di gestire separatamente i database e gli utenti.

Creare un database

  1. In cPanel, fai clic su Gestisci i miei database
  2. Nella sezione Crea nuovo database, inserisci il nome del database
  3. Fai clic su Crea database

Creazione di un database

Creare un utente MySQL

  1. Scorri fino alla sezione Database Users > Aggiungi nuovo utente
  2. Inserisci il nome utente desiderato
  3. Crea una password sicura (usa il generatore)
  4. Fai clic su Crea utente

Creazione di un utente MySQL

Conferma creazione utente

Associare l'utente al database

  1. Nella sezione Aggiungi utente al database, seleziona l'utente e il database
  2. Fai clic su Aggiungi

Associazione utente-database

Configurare i privilegi

Seleziona i privilegi appropriati per l'utente:

Configurazione dei privilegi

Fai clic su Apporta modifiche per applicare.

Conferma dei privilegi

Verificare la configurazione

Torna su Gestisci i miei database e controlla la sezione Database correnti per verificare che tutto sia configurato correttamente:

Elenco dei database


Comprendere i privilegi MySQL

Tabella dei privilegi

Privilegio Descrizione Raccomandazione
ALL PRIVILEGES Tutti i diritti sul database ✅ Per il proprietario del sito
SELECT Leggere i dati Solo lettura
INSERT Aggiungere dati Scrittura di base
UPDATE Modificare i dati esistenti Scrittura di base
DELETE Eliminare dati Scrittura di base
CREATE Creare tabelle Amministrazione
DROP Eliminare tabelle ⚠️ Pericoloso
ALTER Modificare la struttura delle tabelle Amministrazione
INDEX Gestire gli indici Ottimizzazione
REFERENCES Creare chiavi esterne Relazioni tra tabelle
CREATE TEMPORARY TABLES Creare tabelle temporanee Applicazioni avanzate
LOCK TABLES Bloccare tabelle Manutenzione
EXECUTE Eseguire procedure memorizzate Applicazioni avanzate
CREATE VIEW Creare viste Applicazioni avanzate
SHOW VIEW Visualizzare viste Applicazioni avanzate
CREATE ROUTINE Creare procedure Applicazioni avanzate
ALTER ROUTINE Modificare procedure Applicazioni avanzate
EVENT Gestire eventi Automazione
TRIGGER Gestire trigger Automazione

Configurazioni raccomandate per caso d'uso

Caso d'uso Privilegi raccomandati
WordPress / CMS ALL PRIVILEGES
Applicazione di sola lettura SELECT
Applicazione CRUD di base SELECT, INSERT, UPDATE, DELETE
Sviluppatore ALL PRIVILEGES
Backup automatico SELECT, LOCK TABLES

Gestire i database con phpMyAdmin

Accedere a phpMyAdmin

In cPanel, fai clic su phpMyAdmin nella sezione Database.

Interfaccia phpMyAdmin

L'interfaccia è composta da diversi elementi:

Zona Descrizione
Pannello sinistro Elenco dei tuoi database e tabelle
Zona principale Visualizzazione e modifica dei dati
Barra superiore Strumenti (SQL, Importa, Esporta, ecc.)

Azioni comuni in phpMyAdmin

Esplora i dati

  1. Seleziona un database nel pannello sinistro
  2. Fai clic su una tabella
  3. Utilizza la scheda Browse per visualizzare i dati

Eseguire una query SQL

  1. Seleziona il database
  2. Fai clic sulla scheda SQL
  3. Inserisci la tua query e fai clic su Go
-- Esempio: Visualizzare tutti gli utenti WordPress
SELECT * FROM wp_users;

-- Esempio: Contare gli articoli
SELECT COUNT(*) FROM wp_posts WHERE post_type = 'post';

Importare un database

  1. Seleziona il database di destinazione
  2. Fai clic sulla scheda Importa
  3. Scegli il tuo file .sql
  4. Fai clic su Go

⚠️ Limite di importazione: La dimensione massima di importazione tramite phpMyAdmin è generalmente limitata. Per file di grandi dimensioni, utilizza SSH.

Esportare un database (Backup)

  1. Seleziona il database
  2. Fai clic sulla scheda Esporta
  3. Scegli il formato (SQL consigliato)
  4. Fai clic su Go

Gestione avanzata

Modificare la password di un utente

  1. Accedi a Gestisci i miei database
  2. Nella sezione Utenti correnti, trova l'utente
  3. Fai clic su Cambia password
  4. Inserisci la nuova password
  5. Fai clic su Cambia password

⚠️ Importante: Aggiorna la password in tutti i tuoi file di configurazione (wp-config.php, .env, ecc.)

Rinominare un database

  1. Accedi a Gestisci i miei database
  2. In Database correnti, fai clic su Rinomina accanto al database
  3. Inserisci il nuovo nome
  4. Fai clic su Procedi

⚠️ Attenzione: La rinominazione interrompe le connessioni attive. Aggiorna i tuoi file di configurazione.

Eliminare un database

  1. Accedi a Gestisci i miei database
  2. In Database correnti, fai clic su Elimina accanto al database
  3. Conferma l'eliminazione

⚠️ Questa azione è irreversibile! Fai sempre un backup prima di eliminare.

Eliminare un utente

  1. Accedi a Gestisci i miei database
  2. In Utenti correnti, fai clic su Elimina accanto all'utente
  3. Conferma l'eliminazione

Revocare i privilegi di un utente

  1. Accedi a Gestisci i miei database
  2. In Database correnti, fai clic sul nome dell'utente associato
  3. Deseleziona i privilegi da rimuovere
  4. Fai clic su Apporta modifiche

Verificare e riparare un database

Verificare l'integrità

  1. Accedi a Gestisci i miei database
  2. Nella sezione Modifica database, seleziona il database
  3. Fai clic su Controlla database
  4. cPanel analizza le tabelle e segnala i problemi

Riparare un database

  1. Nella stessa sezione, seleziona il database
  2. Fai clic su Ripara database
  3. cPanel tenta di riparare automaticamente le tabelle corrotte

Configurare l'accesso remoto (Remote MySQL)

Per impostazione predefinita, i database sono accessibili solo dal server. Per consentire l'accesso remoto:

Consentire un indirizzo IP

  1. In cPanel, fai clic su Remote MySQL
  2. Inserisci l'indirizzo IP da autorizzare
  3. Fai clic su Aggiungi host

Utilizzare un carattere jolly

Per consentire un intervallo di indirizzi:

Formato Descrizione
192.168.1.% Tutti gli IP che iniziano con 192.168.1
%.example.com Tutti i sottodomini di example.com

⚠️ Sicurezza: Non utilizzare mai % da solo (tutti gli IP)! Limita sempre l'accesso agli IP necessari.


Configurazione per le applicazioni popolari

WordPress (wp-config.php)

/** Nome del database */
define( 'DB_NAME', 'prefisso_wordpress' );

/** Utente MySQL */
define( 'DB_USER', 'prefisso_utente' );

/** Password MySQL */
define( 'DB_PASSWORD', 'tua_password_sicura' );

/** Server MySQL */
define( 'DB_HOST', 'localhost' );

/** Codifica (UTF-8 consigliata) */
define( 'DB_CHARSET', 'utf8mb4' );

/** Collazione */
define( 'DB_COLLATE', '' );

PrestaShop (parameters.php)

'database_host' => 'localhost',
'database_port' => '',
'database_name' => 'prefisso_prestashop',
'database_user' => 'prefisso_utente',
'database_password' => 'tua_password_sicura',

Laravel (.env)

DB_CONNECTION=mysql
DB_HOST=localhost
DB_PORT=3306
DB_DATABASE=prefisso_laravel
DB_USERNAME=prefisso_utente
DB_PASSWORD=tua_password_sicura

PHP (connessione PDO)

<?php
$host = 'localhost';
$dbname = 'prefisso_miodatabase';
$username = 'prefisso_utente';
$password = 'tua_password_sicura';

try {
    $pdo = new PDO(
        "mysql:host=$host;dbname=$dbname;charset=utf8mb4",
        $username,
        $password,
        [
            PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
            PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC
        ]
    );
    echo "Connessione riuscita!";
} catch (PDOException $e) {
    die("Errore di connessione: " . $e->getMessage());
}
?>

Risoluzione dei problemi

❓ Errore "Access denied for user"

Cause possibili:

  • Password errata
  • Utente non associato al database
  • Privilegi insufficienti

Soluzioni:

  1. Controlla la password in Gestisci i miei database
  2. Verifica che l'utente sia associato al database
  3. Riattribuisci i privilegi

❓ Errore "Unknown database"

Cause: Il nome del database è errato.

Soluzione: Controlla il nome completo con il prefisso (es: utente_miodatabase).

❓ Errore "Too many connections"

Cause: Troppe connessioni simultanee al database.

Soluzioni:

  1. Chiudi le connessioni non utilizzate nel tuo codice
  2. Utilizza connessioni persistenti con moderazione
  3. Contatta il supporto per aumentare il limite se necessario

❓ Database corrotto

Sintomi: Errori durante le query, dati mancanti.

Soluzioni:

  1. Utilizza lo strumento Ripara database in cPanel
  2. In phpMyAdmin, seleziona le tabelle > Ripara tabella
  3. In SSH:
mysqlcheck -u utente -p --repair nome_database

❓ Importazione fallita (file troppo grande)

Soluzioni:

  1. Dividi il file SQL in più parti
  2. Utilizza l'importazione da riga di comando (SSH):
mysql -u utente -p nome_database < file.sql
  1. Comprimi il file in .gz prima dell'importazione

Buone pratiche di sicurezza

🔒 Raccomandazioni essenziali

Pratica Importanza
Utilizzare password forti (16+ caratteri) ⭐⭐⭐ Critica
Un utente diverso per database/applicazione ⭐⭐⭐ Critica
Concedere solo i privilegi necessari ⭐⭐ Importante
Eseguire backup regolarmente ⭐⭐⭐ Critica
Non utilizzare mai "root" per le applicazioni ⭐⭐⭐ Critica
Limitare l'accesso remoto ⭐⭐ Importante

🛡️ Checklist sicurezza

  • [ ] Password unica e complessa per ogni utente
  • [ ] Prefisso della tabella personalizzato (non wp_ di default)
  • [ ] Backup automatico giornaliero configurato
  • [ ] Accesso phpMyAdmin sicuro
  • [ ] Nessun accesso remoto a meno che non sia assolutamente necessario
  • [ ] Privilegi limitati al minimo necessario

Riepilogo

Passo Azione
1 Accedere a Database Wizard o Manage My Databases
2 Creare il database
3 Creare l'utente MySQL con una password forte
4 Associare l'utente al database
5 Configurare i privilegi appropriati
6 Annotare le informazioni di accesso
7 Configurare la tua applicazione con queste informazioni
8 Testare la connessione